spring返回json数据的注解,json报文注释
写爬虫互联网协议(互联网协议)被封了怎么解决?立即使用
本篇文章将介绍两种示例进行数据返回注解方式演示。
示例1
@ResponseBody是作用在方法上的,@ResponseBody表示该方法的返回结果直接写入超文本传送协议响应正文中,一般在异步获取数据时使用【也就是AJAX】,在使用@RequestMapping后,返回值通常解析为跳转路径,但是加上@ResponseBody后返回结果不会被解析为跳转路径,而是直接写入超文本传送协议响应正文中。比如异步获取数据数据,加上@ResponseBody后,会直接返回数据数据@请求体将超文本传送协议请求正文插入方法中,使用适合的转换器将请求体写入某个对象。
下面的部分位于Spring-mvc.xml或者dispatcherServlet-servlet.xml中(春天3.0中ServletName-servlet.xml替代了Spring-mvc.xml)
!-用于将对象转换为JSON -
bean id=stringConverter
org。spring框架。http。转换器。 stringhttpmessageconverter
属性名=supportedMediaTypes
目录
值文本/纯文本;charset=UTF-8/值
/列表
/属性
/bean
bean id=jsonConverter
org。spring框架。http。转换器。JSON。映射Jackson 2 http message converter /bean
bean class= org。spring框架。网络。servlet。MVC。方法。注释。requestmappingchandleradapter
属性名=消息转换器
目录
ref bean=stringConverter /
ref bean=jsonConverter /
/列表
/属性
/bean在对应的控制器中:
@RequestMapping(value=/login ,method=RequestMethod .帖子)
public @ResponseBody用户登录(字符串用户名,字符串密码){
用户user=userService.login(用户名,密码);
返回用户;
}这里我使用的杰克逊包:
(1)杰克逊核心2.5.0
(2)杰克逊数据绑定2.5.0
(3)杰克逊-注解2.5.0
导入后构建路径;
警告:若用冬眠等对象工具生成的持久化类类,一对一,对多等关系可能会输出无限循环的json:
需要使用在持久化类类中导入com。更快的XML。杰克逊。注释。JSON忽略,并为需要屏蔽的类添加@JsonIgnore注解,这样被注解的属性就不会出现在数据中了。
示例2
@ResponseBody
@RequestMapping(value=/login )
public ModelAndView ajaxLogin(模型模型,用户用户,HttpServletRequest请求,HttpSession会话){
String errorMessage=loginCommon(模型、用户、请求、会话);
map map=new HashMap();
if(值小部件。isnullorempty(错误消息)){
map.put(Constant2 .AJAX_LOGIN_RESULT, success );
}否则{
map.put(Constant2 .AJAX_LOGIN_RESULT失败);
}
map.put(error ,错误消息);
model.addAttribute(user ,null);
返回新的modeland view(新MappingJacksonJsonView(),map);
}或者
model.addAttribute(user ,用户1);
运行结果:
以上就是返回数据用什么注解的详细内容,更多请关注我们其它相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。