• AJAX发送json,SpringMVC 接收JSON,@RequestBody


    需求:JQuery ajax前台,采用 POST请求 发送json,后台使用SpringMVC接收json并处理

    前台:

    $.ajax({

        url:"请求地址",

        type:"POST",//设置请求方式

        header:'Content-Type':'application/json; charset=utf-8',//设置前台发送数据格式(关注Content-Type,不同Content-Type对应SpringMVC处理方式不同,影响请求类型,故本特 别指明采用POST请求方式。具体Content-Type相关知识,需要在搜寻学习了)

        data:    JSON.stringify(param),

        ........

    })

    var param = {

         name:“ROLE_1”,

         permission:.....

    }

    通过JSON.stringify(param),将数据序列化为一个 JSON字符串,用于发送

          本文 JSON 数据例:

      1. name: "ROLE_1"
      2. permission: ["{"id":"1","name":"ROLE_HOME","url":"/home","description":"home"}",…]
        1. 0: "{"id":"1","name":"ROLE_HOME","url":"/home","description":"home"}"
        2. 1: "{"id":"2","name":"ROLE_ADMIN","url":"/sockiet","description":"ABel"}"                      

    后台:

    @ResponseBody
    @RequestMapping(value="/savePermission",method=RequestMethod.POST)
    public void savePermission(@RequestBody(required=true) JSONObject json) {
    System.out.println(json);
    }

    注解@RequestBody 用于处理POST请求,以及application/json,平时ajax默认Content-Type为application/x-www-form-urlencoded,是以key-value方式发送数据。我们采用@RequestParam注解接收。

    @RequestBody还可以处理其它请求类型数据,在SpringMVC中@RequestBody默认处理值就是 “application/json“  。该注解为关键,具体注解其余知识,需要自己学习了。

    此处采用JSONObject json接收数据。此外还可以采用实体接收等。

    以上就完成了一个简单的前台发送JSON,后台接收并处理的功能。

    往前走,别回头!
  • 相关阅读:
    ssh根据姓名查询的时候报错java.lang.IndexOutOfBoundsException: Remember that
    JSF>自订转换器 小强斋
    JSF>标准验证器 小强斋
    JSF>自订验证器 小强斋
    JSF>输入、输出、命令、选择、表格、其他标签 小强斋
    JSF>自订转换器 小强斋
    JSF>自订验证器 小强斋
    JSF>错误讯息处理 小强斋
    JSF>自订验证器 小强斋
    JSF>输入、输出、命令、选择、表格、其他标签 小强斋
  • 原文地址:https://www.cnblogs.com/dev1ce/p/10509811.html
Copyright © 2020-2023  润新知