@RequestBody和@ResponseBody注解的区别

@ResponseBody 注解表示该方法返回的结果直接写入Http响应正文,一般在异步获得数据时使用;在使用@RequestMapping后,返回值通常被解析为跳转路径,加上@ResponseBody后返回值不会被解析为跳转路径,而是直接写入HTTP响应正文中。例如,异步获得Json数据,加上@ResponseBody后  直接可以返回Json数据。

@RequestBody注解将Http请求正文插入方法中,使用合适的HttpMessageCoverter将请求体写入某一个对象。

1 @RequestMapping(/Person/Login)
2 @ResponseBody
3 public Person Login(@ResponseBody Person person){
4        // 将请求中的 datas 写入 Person 对象中
5       return person;
6 }    
时间: 2024-10-12 06:37:39

@RequestBody和@ResponseBody注解的区别的相关文章

在SpringMVC中使用@RequestBody和@ResponseBody注解处理json时,报出HTTP Status 415的解决方案

我在使用SpringMVC的@RequestBody和@ResponseBody注解处理JSON数据的时候,总是出现415的错误,说是不支持所提交数据格式,我在页面中使用了JQuery的AJAX来发出JSON数据给服务器: $.ajax({ type:'post', url:'${pageContext.request.contextPath }/requestJSON.action', contentType :'application/json;charset=utf-8', //数据是JS

@RequestBody 和@ResponseBody 注解详解

简介: @RequestBody 作用: i) 该注解用于读取Request请求的body部分数据,使用系统默认配置的HttpMessageConverter进行解析,然后把相应的数据绑定到要返回的对象上: ii) 再把HttpMessageConverter返回的对象数据绑定到 controller中方法的参数上. 使用时机: A) GET.POST方式提时, 根据request header Content-Type的值来判断: application/x-www-form-urlencod

@RequestBody, @ResponseBody 注解详解(转)

引言: 接上一篇文章讲述处理@RequestMapping的方法参数绑定之后,详细介绍下@RequestBody.@ResponseBody的具体用法和使用时机:同时对曾经看的一篇文章中讲述的某些部分进行澄清 (文章地址:http://www.byywee.com/page/M0/S702/702424.html). 简介: @RequestBody 作用: i) 该注解用于读取Request请求的body部分数据,使用系统默认配置的HttpMessageConverter进行解析,然后把相应的

SpringMVC源码剖析5:消息转换器HttpMessageConverter与@ResponseBody注解

转自 SpringMVC关于json.xml自动转换的原理研究[附带源码分析] 本系列文章首发于我的个人博客:https://h2pl.github.io/ 欢迎阅览我的CSDN专栏:Spring源码解析 https://blog.csdn.net/column/details/21851.html 部分代码会放在我的的Github:https://github.com/h2pl/ 目录 前言 现象 源码分析 实例讲解 关于配置 总结 参考资料 前言 SpringMVC是目前主流的Web MVC

@RequestBody, @ResponseBody 注解理解

@RequestBody, @ResponseBody 注解理解 自己以前没怎么留意过,来实习后公司采用前后端分离的开发方式,前后端拿到的注释都是 json 格式的,这时候 @RequestBody, @ResponseBody 这两个注解就非常好用,下面详细介绍用法: @RequestBody 1. 作用: 该注解用于读取 Request 请求的 body 部分数据,使用系统默认配置的 HttpMessageConverter 进行解析,然后把相应的数据绑定到要返回的对象上: 再把 HttpM

@ResponseBody注解与JSON

MappingJacksonHttpMessageConverter 调用了 objectMapper.writeValue(OutputStream stream, Object)方法,使用@ResponseBody注解返回的对象就传入Object参数内. [注意]若返回的对象为已经格式化好的json串时,不使用@RequestBody注解,而应该这样处理: 1.response.setContentType("application/json; charset=UTF-8"); 2

SpringMVC之ajax传递jason数据详解以及@RequestBody和@ResonseBody注解

最近在做ajax进行用户名校验时遇到了一些问题,在不断debug的过程中也加深了我对springMVC之ajax传递jason数据的理解,希望对有需要的小伙伴一些帮助~ 工具:IDEA 我们通过code来理解一下: 1.如下图时js代码:因为是对用户名校验,所以传入的数据只有用户名: PS:SpringMVC 通过ajax传参到后台时:因为@RequestBody接收的是一个Json对象的字符串,而不是一个Json对象.然而在ajax请求往往传的都是Json对象,用 JSON.stringify

@RequestBody和@ResponseBody的用法

1. 用json字符串格式向后台传请求参数,那么后台需要采用@RequestBody来处理请求的json格式数据,将json数据转换为java对象,否则springmvc就不能解析导致传空参的结果 @PostMapping("/save") public void save(@RequestBody User user){ userRepository.save(user); } 2.@ResponseBody就可以理解成将java的对象转换成json字符串的格式给前端解析,使用@Re

SpringMVC中使用@ResponseBody注解标注业务方法,将业务方法的返回值做成json输出给页面

导包: 除了一些spring的包之外,还需要jackson-annotations.jar , jackson-core.jar , jackson-databind.jar 这三个包 开启@ResponseBody注解: 在 spring-mvc.xml 中通过<mvc:annotation-driven />开启@ResponseBody注解 使用@ResponseBody标注业务方法 package com.loger.controller; import java.util.Array