springmvc使用@ResponseBody注解返回对象

来源:互联网 发布:获取手机号码软件下载 编辑:程序博客网 时间:2024/06/16 18:37

1.spring-mvc中配置

<mvc:annotation-driven />
2.spring版本使用4.1.xx以上,低版本貌似有问题

3.jackson包使用2.2.x以上,低版本貌似有问题

需要的jackson包如下:

<dependency>  <groupId>com.fasterxml.jackson.core</groupId>  <artifactId>jackson-databind</artifactId>  <version>2.5.4</version></dependency><dependency>  <groupId>com.fasterxml.jackson.core</groupId>  <artifactId>jackson-annotations</artifactId>  <version>2.5.4</version></dependency><dependency>  <groupId>com.fasterxml.jackson.core</groupId>  <artifactId>jackson-core</artifactId>  <version>2.5.4</version></dependency>
4.返回的POJO对象必须配置get和set方法,我就是因为只设置了set方法折腾了半天,一直报错

The resource identified by this request is only capable of generating responses with characteristics

 

出现这个问题的原因是因为,@ResponseBody返回的对象中的属性缺少set\get方法。 将返回对象加上set\get方法后,一切ok。

总结: 开始总以为是Content-Type或者Accept属性有问题,但找了半天原因才发现这里有个基本的要求:POJO对象要转成Json,则要求POJO中的属性必须都有getter方法,加上getter方法后就正常了。

0 0
原创粉丝点击