Spring MVC 보기 해석 기: 여러 보기 해석 기의 우선 순 위 를 설정 합 니 다.

http://www.cnblogs.com/rollenholt/archive/2012/12/27/2836035.html
문제.
Spring MVC 응용 프로그램 에서 보기 이름 을 분석 하기 위해 보기 해석 기 정책 을 자주 사용 해 야 합 니 다.예 를 들 어 세 개의 보기 해석 기 를 공동으로 사용 합 니 다: Internal ResourceView Resolver, ResourceBundleView Resolver 와 XmlView Resolver.
그러나 보기 의 이름 을 되 돌려 준다 면 어떤 보기 해석 기 정책 을 사용 하 시 겠 습 니까?
해결 방법
여러 보기 해석 기 정책 을 사용 했다 면 'order' 속성 을 통 해 우선 순 위 를 밝 혀 야 합 니 다. order 값 이 낮 을 수록 우선 순위 가 높 습 니 다.예 를 들 면:
<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">
 
    <!--   web ,  Spring    -->
    <context:component-scan base-package="com.xxx.training"/>
 
 
    <bean class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
        <property name="basename">
            <value>spring-views</value>
        </property>
        <property name="order" value="0" />
    </bean>
 
    <bean class="org.springframework.web.servlet.view.XmlViewResolver">
        <property name="location">
            <value>/WEB-INF/spring-views.xml</value>
        </property>
        <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>

메모: Internal ResourceView Resolver 는 항상 가장 낮은 우선 순위 (최대 order 값) 를 부여 해 야 합 니 다. 어떤 보기 이름 을 되 돌려 도 보 기 를 해석 하기 때 문 입 니 다.다른 해상도 기의 우선 순위 보다 우선 순위 가 높 으 면 낮은 우선 순 위 를 가 진 다른 해상도 기 는 보 기 를 분석 할 기회 가 없습니다.

좋은 웹페이지 즐겨찾기