The following is a summary of view Resolver in Spring 3 MVC:
1 internalresourceviewresolver
This is the most commonly used method for splicing returned views, for example:
<Bean
Class = "org. springframework. Web. servlet. MVC. Support. controllerclassnamehandlermapping"/>
<! -- Register the bean -->
<Bean class = "com. mkyong. Common. Controller. welcomecontroller"/>
<Bean id = "viewresolver"
Class = "org. springframework. Web. servlet. View. internalresourceviewresolver">
<Property name = "prefix">
<Value>/WEB-INF/pages/</value>
</Property>
<Property name = "suffix">
<Value>. jsp </value>
</Property>
</Bean>
The returned result is: prefix + view name + suffix =/WEB-INF/pages/welcompage. jsp
2) xmlviewresolver
Example:
<Bean
Class = "org. springframework. Web. servlet. MVC. Support. controllerclassnamehandlermapping"/>
<! -- Register the bean -->
<Bean class = "com. mkyong. Common. Controller. welcomecontroller"/>
<Bean class = "org. springframework. Web. servlet. View. xmlviewresolver">
<Property name = "location">
<Value>/WEB-INF/spring-views.xml </value>
</Property>
</Bean>
Spring-views.xml
<Beans xmlns = "http://www.springframework.org/schema/beans"
Xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance"
Xsi: schemalocation = "http://www.springframework.org/schema/beans
Http://www.springframework.org/schema/beans/spring-beans-2.5.xsd>
<Bean id = "welcomepage"
Class = "org. springframework. Web. servlet. View. jstlview">
<Property name = "url" value = "/WEB-INF/pages/welcomepage. jsp"/>
</Bean>
</Beans>
In fact, it is easy to understand the configuration of view separately.
3 resourcebundleviewresolver
Example:
<Bean class = "com. mkyong. Common. Controller. welcomecontroller"/>
<Bean class = "org. springframework. Web. servlet. View. resourcebundleviewresolver">
<Property name = "basename" value = "Spring-views"/>
</Bean>
At this time, in fact, go to the class directory under the spring-views.properties to find the relevant view, View
The configuration is as follows:
Welcomepage. (class) = org. springframework. Web. servlet. View. jstlview
Welcomepage. url =/WEB-INF/pages/welcomepage. jsp
4 View Resolvers priority
<Beans...>
<Bean class = "org. springframework. Web. servlet. View. xmlviewresolver">
<Property name = "location">
<Value>/WEB-INF/spring-views.xml </value>
</Property>
<Property name = "order" value = "0"/>
</Bean>
<Bean class = "org. springframework. Web. servlet. View. resourcebundleviewresolver">
<Property name = "basename" value = "Spring-views"/>
<Property name = "order" value = "1"/>
</Bean>
<Bean id = "viewresolver"
Class = "org. springframework. Web. servlet. View. internalresourceviewresolver">
<Property name = "prefix">
<Value>/WEB-INF/pages/</value>
</Property>
<Property name = "suffix">
<Value>. jsp </value>
</Property>
<Property name = "order" value = "2"/>
</Bean>
</Beans>
Note that the lower the number, the higher the priority, the above order is:
Xmlviewresolver --> resourcebundleviewresolver --> internalresourceviewresolver