SpringMVC系列教程——11多视图配置

SpringMVC系列教程——11多视图配置

上一篇:SpringMVC系列教程——10接收与响应json数据格式
SpringMVC多视图是一个方法,它可以返回json/xml等格式的数据,为实现这样的功能我们需要导入jar包。

链接:https://pan.baidu.com/s/1jjPHX44QzUouMfNQfFT9xQ
提取码:eeb8

导入jar包后,我们需要继续在DispatcherServlet-servlet.xml里面配置下面多视图的配置。

<!--配置多视图,既可以返回JSON也可以返回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"/>
            <!-- xml格式视图支持 -->
            <bean class="org.springframework.web.servlet.view.xml.MarshallingView">
                <constructor-arg>
                    <bean class="org.springframework.oxm.jaxb.Jaxb2Marshaller">
                        <property name="classesToBeBound">
                            <list>
                                <value>domain.Student</value>
                            </list>
                        </property>
                    </bean>
                </constructor-arg>
            </bean>
        </list>
    </property>
</bean>

我们用下面这个方法来演示:

@RequestMapping("/get")
public Student get(){
    Student student = new Student();
    student.setName("jack");
    student.setNumber(123456);
    System.out.println(student);
    return student;
}

上面配置完了在返回的时候只支持json,而不支持xml,于是在返回的Student类里面配置下面注解。
在这里插入图片描述
接下来我们访问:http://localhost:8080/stu/get.json
在这里插入图片描述
这里出现了资源不存在的现象,我最后发现是由于在web.xml里面的虚拟路径配置导致的。
在这里插入图片描述
我们修改为(当然修改后我们前面文章讲的路径访问仍然是可以的):在这里插入图片描述
再次访问:http://localhost:8080/stu/get.json
在这里插入图片描述
访问:http://localhost:8080/stu/get.xml
在这里插入图片描述
到此为止我们的SpringMVC教程就结束了,之后我会抽空继续写源码解读的文章,到时候继续更新。😄
SpringMVC还有一篇拦截器SpringMVC拦截器,有兴趣可以看一下
上一篇:SpringMVC系列教程——10接收与响应json数据格式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值