SpringMVC 对多视图的支持

    xiaoxiao2021-03-25  98

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

    转载请注明原文地址: https://ju.6miu.com/read-21773.html

    最新回复(0)