spring 3 mvc中的view resolver小结

22 篇文章 0 订阅
15 篇文章 0 订阅
下面小结下spring 3 mvc中的view resolver:
1 InternalResourceViewResolver
  这是最常用的了,用来拼接返回的视图,比如:
<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>
则返回的以:prefix + view name + suffix = /WEB-INF/pages/WelcomPage.jsp


2)  XmlViewResolver
   看例子:
  <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>
其实就是将view的配置分开来配置而已,容易明白

3 ResourceBundleViewResolver
  看例子:
<bean class="com.mkyong.common.controller.WelcomeController" />

<bean class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
<property name="basename" value="spring-views" />
</bean>

这个时候,实际上去CLASS目录下的spring-views.properties去找相关的view,view
的配置如下:
WelcomePage.(class)=org.springframework.web.servlet.view.JstlView
WelcomePage.url=/WEB-INF/pages/WelcomePage.jsp


4 view resolvers 的优先级
  <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>
注意的是,数字越低,优先级越高,则以上的顺序为:
XmlViewResolver --> ResourceBundleViewResolver --> InternalResourceViewResolver
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值