springmvc之@ResponseBody 和 @RequestBody 注解的区别

springmvc之@ResponseBody 和 @RequestBody 注解的区别springmvc之@ResponseBody 和 @RequestBody 注解的区别

大家好,又见面了,我是你们的朋友全栈君。

  • @Responsebody 注解表示该方法的返回的结果直接写入 HTTP 响应正文(ResponseBody)中,一般在异步获取数据时使用;

  • 在使用 @RequestMapping 后,返回值通常解析为跳转路径,加上 @Responsebody 后返回结果不会被解析为跳转路径,而是直接写入HTTP 响应正文中。例如,异步获取 json 数据,加上 @Responsebody 注解后,就会直接返回 json 数据。

  • @RequestBody 注解则是将 HTTP 请求正文插入方法中,使用适合的 HttpMessageConverter 将请求体写入某个对象。
    例如:

    @RequestMapping(value = "person/login")
    @ResponseBody
    public Person login(@RequestBody Person person) { 
         // 将请求中的 datas 写入 Person 对象中
        return person;    // 不会被解析为跳转路径,而是直接写入 HTTP 响应正文中
    }
    

页面异步请求:

function login() { 
   
    var datas = '{"name":"' + $('#name').val() + '","id":"' + $('#id').val() + '","status":"' + $('#status').val() + '"}';
    $.ajax({ 
   
        type : 'POST',
        contentType : 'application/json',
        url : "${pageContext.request.contextPath}/person/login",
        processData : false,
        dataType : 'json',
        data : datas,
        success : function(data) { 
   
            alert("id: " + data.id + "name: " + data.name + "status: "+ data.status);
        },
        error : function() { 
   
            alert('Sorry, it is wrong!');
        }
    });
};

原文地址:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/105828.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java函数式编程Function(java函数式编程实战)

    JAVA函数式编程背景常见的编程范式函数式编程的优劣JAVA8中为函数式编程引入的变化JAVA函数式编程可以简单概括基本函数Lambda表达式方法引用Stream流API创建操作中间操作终止从操作并行流级联表达式与柯里化收集器(终止操作因为内容较多提出来说明)Stream特性工程地址背景JAVA版本最新的目前已经发布到11了,但目前市面上大多数公司依然在使用Java7之前版本的语法,然而这些编…

    2022年4月18日
    209
  • 用c语言编写银行家算法,C语言实现银行家算法

    用c语言编写银行家算法,C语言实现银行家算法《C语言实现银行家算法》由会员分享,可在线阅读,更多相关《C语言实现银行家算法(8页珍藏版)》请在人人文库网上搜索。1、C语言实现银行家算法(源码、运行结果)一、源码/*银行家算法10-22*/#include/函数声明voidinit(int*pcount,int*scount,intAllocation1010,intNeed1010,intAvailable10);vo…

    2022年7月22日
    6
  • awk linux 数组,Linux中的awk数组的基本使用方法

    awk linux 数组,Linux中的awk数组的基本使用方法1.awk数组描述在其他的编程语言中,数组的下标都是从0开始的,也就是说,如果想反向引用数组中的第一个元素,则需要引用对应的下标[0],在awk中数组也是通过引用下标的方法,但是在awk中数组的下标是从1开始的,在其他语言中,你可能会习惯于先“声明”一个数组,在awk中,则不用这样,直接为数组的元素赋值即可(其实如果自己给数组赋值,下标从1或者从0开始那就无所谓了!)2.在声明数组时,可能值很多…

    2022年7月19日
    17
  • 超云服务器系统安装教程_服务器系统安装教程详细步骤

    超云服务器系统安装教程_服务器系统安装教程详细步骤服务器linux系统安装文档工具服务器、U盘至少8G、老毛桃U盘工具、LinuxCentOS6.5镜像文件首先,查看服务器的相关配置,服务器的型号,是那个类型的RAID,系统兼容性列表,服务的内存,支持系统的是多少位的,至此RAID是多少等。然后根据不同的服务器型号,选择不同的系统安装方式。本次安装的是天地超云公司的超云服务器R5921G9 方法 制作

    2022年9月28日
    4
  • Java拦截器步骤

    Java拦截器步骤拦截器是JavaWeb开发中必须用的技术,可以对整个系统字符集编码、URL访问权限过滤、过滤敏感词信息、session用户是否存在、日志记录等等,拦截器支队controller请求起作用,接下来小编讲解下spring框架中拦截器如何使用工具/原料myeclipsespring框架方法/步骤

    2022年5月28日
    38
  • 霍尼韦尔与浙江石化扩大合作,助力中国最大石化项目进一步建设[通俗易懂]

    霍尼韦尔与浙江石化扩大合作,助力中国最大石化项目进一步建设[通俗易懂]霍尼韦尔在第二届中国国际进口博览会上宣布,浙江石油化工有限公司(以下称“浙江石化”)将在其位于浙江省舟山的炼化一体化二期项目采用霍尼韦尔一系列先进技术,包括工艺技术、催化剂、关键设备和控制自动化技术。舟山炼化一体化项目是中国国家经济最新发展规划中的数个大型石化产业基地之一。合作内容包括:霍尼韦尔UOPMD/ECMD塔盘,用于两套240万吨芳烃装置中的精馏和汽提环节,为客户提供出色的性能和经济效…

    2022年10月16日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号