zoukankan      html  css  js  c++  java
  • 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,后台接收并处理的功能。

    往前走,别回头!
  • 相关阅读:
    Yii Model中添加默认搜索条件
    Yii CModel中rules验证 获取错误信息
    Yii CModel中rules验证规则[转]
    json转jsonscheme在线转换工具地址
    git的基本使用
    python笔记(二)-打印、注释、输入、变量命名
    python笔记(一)-pycharm的简单使用
    python自动化-操作excel方法的封装
    python基础学习-excel的读写
    Robot Framework中处理时间控件的选择
  • 原文地址:https://www.cnblogs.com/dev1ce/p/10509811.html
Copyright © 2011-2022 走看看