springmvc的多视图支持
发布日期:2021-06-30 18:41:07 浏览次数:12 分类:技术文章

本文共 2354 字,大约阅读时间需要 7 分钟。

一、什么是多视图支持

1、多视图指的是各种媒体类型,如:json、xml、pdf等。

2、springmvc提供的多视图支持是指将一个能够返回数据的请求,根据请求链接(url)不同的后缀,产生不同的数据格式进行返回。如:返回的是xml格式数据,而返回的是json格式数据。

二、怎么使用多视图支持

1、导入jar包

一般需要支持什么视图就导入什么jar包

json:jackson-core-asl-1.9.11.jar、jackson-mapper-asl-1.9.11.jar

xml:spring-oxm-3.2.0.RELEASE.jar(在spring的lib包下:spring-framework-3.2.0.RELEASE-dist\spring-framework-3.2.0.RELEASE\libs)

2、配置springmvc的多视图支持

该配置适用于spring3.2及以后的版本

POJO类的全限定名(如:com.lqr.domain.User)
...

3、对javabean类进行xml注解

该注解会影响@ResponseBody,如果要@ResponseBody请不要使用@XmlRootElement

@XmlRootElementpublic class User {    private Integer id;    private String username;    private Integer age;    private String address;    public Integer getId() {        return id;    }    public void setId(Integer id) {        this.id = id;    }    public String getUsername() {        return username;    }    public void setUsername(String username) {        this.username = username;    }    public Integer getAge() {        return age;    }    public void setAge(Integer age) {        this.age = age;    }    public String getAddress() {        return address;    }    public void setAddress(String address) {        this.address = address;    }}

4、增加springmvc的请求路径

因为spring的官方说明中说到,不同数据格式的数据获取采用的根据后缀名来判定的,所以如果你在web.xml中配置springmvc的url匹配模式是后缀类型(如:*.do),则二者矛盾,故需要增加别的url匹配模式,这样可以保证url的请求是经过springmvc处理的,并不与多视图的访问url冲突。

springmvc
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:springmvc.xml
springmvc
*.do
springmvc
/rest/*

5、编写Controller类

跟常规的Controller一样

@Controller@RequestMapping("user")public class UserController {
@RequestMapping("multiView") public User getUser() { User user = new User(); user.setAge(21); user.setAddress("深圳"); user.setUsername("CSDN_LQR"); return user; }}

6、在浏览器访问试试

得到json数据

这里写图片描述

得到xml数据

这里写图片描述

转载地址:https://linqiarui.blog.csdn.net/article/details/53239484 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:ftp文件上传及下载工具类
下一篇:SSH框架与MVC架构之间的联系

发表评论

最新留言

很好
[***.229.124.182]2024年03月27日 04时56分23秒