SpringMVC 对多视图的支持

来源:互联网 发布:珍珠控台软件 编辑:程序博客网 时间:2024/05/23 01:12

再做页面静态化处理时,有时候我们需要 两种或者两种以上的视图解析方式,比如 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格式支持。




0 0
原创粉丝点击