View Resolvers如何在Spring中工作?

时间:2018-02-07 14:11:28

标签: spring spring-mvc spring-boot

我需要知道Spring中支持的任何ViewResolvers实际上是如何映射到物理路径的。

例如,假设我使用的是InternalViewResolver,我在config中将其设置为:

internalResourceViewResolver.setPrefix("/BOOT-INF/classes/templates/");
internalResourceViewResolver.setSuffix(".html");

如果这是我设置它的方式,我构建并将其打包为jar文件,那么Dispatcher servlet将在哪里找到视图。请随时提出任何问题。

1 个答案:

答案 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 文件夹下搜索完整的文件路径。