配置ViewResolver

要點:Spring4.2前後的ViewResolver配置變了

4.2之前

<!-- 配置ViewResolver 。可用多個ViewResolver 。使用order屬性排序-->
    <bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
      <!--這裏是解析器的執行順序,如果有多個的話,配置的數值越小,則越早執行-->
      <property name="order" value="1"></property>
        <property name="mediaTypes">
            <map>
                <!-- 告訴視圖解析器,返回的類型格式 -->
                <entry key="json" value="application/json" />
                <entry key="xml" value="application/xml" />
                <entry key="htm" value="text/htm" />
            </map>
        </property>
        <!-- 默認的視圖 -->
        <property name="defaultViews">
            <list>
                <!-- ModelAndView裏的數據變成JSON -->
                <bean class="org.springframework.web.servlet.view.json.MappingJackson2JsonView" />
            </list>
        </property>
        <!-- 是否忽略accept header,默認是false(不忽略) -->
        <property name="ignoreAcceptHeader" value="true"></property>
    </bean>

4.2之後:沒有order和defaultViews屬性

<!-- 配置ViewResolver視圖解析器-->
    <bean id="contentNegotiationManager" class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
	    <property name="mediaTypes" >
	        <map> 
                 <!-- 告訴視圖解析器,返回的類型爲json格式 -->
                <entry key="json" value="application/json" />
                <entry key="xml" value="application/xml" />
                <entry key="htm" value="text/htm" />
            </map>
	    </property>
	    <!-- 是否忽略掉accept header,默認就是false-->
        <property name="ignoreAcceptHeader" value="true"/>
        <!-- 是否啓用擴展名支持,默認就是true -->
        <property name="favorPathExtension" value="true"/>
	</bean>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章