最近太忙了,定了一大堆计划都还没有去执行,也怪自己还没有摒弃惰性。今天在修改项目的时候遇到的一个406的问题,项目view层是后台去调用,也就是是使用spring的mvc,现在要改为,页面只能从页面跳转,不能从后台设置跳转,目的大概是长期发展下来前后端更容易管理吧(我猜的)。后端接口只是数据处理和返回的作用,一般都是设置为json格式。
于是乎就使用了spring的@ResponseBody标签:
@ResponseBody
@RequestMapping("/index.do")
public Result home11211(HttpServletRequest request, HttpServletResponse response){
return homeService.homeData(request,response);
}
结果输入请求地址访问的时候出现了406错误,网上查询了一番发现自己少了jackson相关的jar包,于是在pom.xml中增加了相关的配置便可以返回json数据了:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.9.11</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.11</version>
</dependency>
或者
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.4.2</version>
</dependency>
两个都能用,具体什么区别或者有无区别还有待研究。