我需要知道Spring中支持的任何ViewResolvers实际上是如何映射到物理路径的。
例如,假设我使用的是InternalViewResolver,我在config中将其设置为:
internalResourceViewResolver.setPrefix("/BOOT-INF/classes/templates/");
internalResourceViewResolver.setSuffix(".html");
如果这是我设置它的方式,我构建并将其打包为jar文件,那么Dispatcher servlet将在哪里找到视图。请随时提出任何问题。
答案 0 :(得分:0)
顾名思义,使用前缀和后缀,您可以创建视图的完整路径。
假设你有前缀为“/ BOOT-INF / classes / templates /”,后缀为“.html”,你将返回新的ModelAndView(“ helloworld “)来自控制器,然后最终路径变为
path = prefix + view name + suffix
path = "/BOOT-INF/classes/templates/" + "helloworld" + ".html"
path = /BOOT-INF/classes/templates/helloword.html
因此Spring调度程序servlet将在spring应用程序的 webapps 文件夹下搜索完整的文件路径。