SpringMVC 对多视图的支持

再做页面静态化处理时,有时候我们需要 两种或者两种以上的视图解析方式,比如 jsp,html,json,jstl,ftl等等,显然默认的 springmvc 只配置一种视图解析方式是满足不了我们的,但是放心,springmvc提供了配置多视图解析的方式:

比如:一种视图解析用来 解析 freemarker静态化后的html,另一种视图解析用来解析 jsp(jstl)


SpringMVC支持很多视图,这里用json和xml举例


支持xml要导入jar包



配置springmvc.xml支持多视图

<bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
	<!-- 配置支持媒体类型 -->
	<property name="contentNegotiationManager">
	  <bean class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
	    <property name="mediaTypes">
		<map>
		 <entry key="json" value="application/json"></entry>
		 <entry key="xml" value="application/xml"></entry>		
		</map>		
	    </property>	
	  </bean>
	</property>
		
	<!-- 指定默认视图 -->
	<property name="defaultViews">
	  <!-- 支持多个视图 -->
	  <list>
	    <!-- 对josn格式视图支持 -->
	    <bean class="org.springframework.web.servlet.view.json.MappingJacksonJsonView"></bean>
		
	    <!-- xml格式视图支持 -->
	    <bean class="org.springframework.web.servlet.view.xml.MarshallingView">
		<constructor-arg>
		  <bean class="org.springframework.oxm.jaxb.Jaxb2Marshaller">
		    <property name="classesToBeBound">
		      <list>
		        <value>cn.itcast.domain.User</value>
		      </list>
		    </property>
		  </bean>
		</constructor-arg>
	    </bean>
	  </list>
        </property>
</bean>




后台代码



访问

约定rest目录所有jsonxml扩展名都支持相应的视图

 

Xml  视图支持


Json 视图支持



<mvc:annotation-driven/>

<mvc:annotation-driven/>默认创建注解处理器映射器,注解处理器适配器。提供json格式支持。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值