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,后台接收并处理的功能。

    往前走,别回头!
  • 相关阅读:
    ZOJ 2702 Unrhymable Rhymes(DP)
    unique() 去重函数
    HDU 4712 Hamming Distance(随机算法)
    HDU 4708 Rotation Lock Puzzle(模拟)
    HBase源代码分析之MemStore的flush发起时机、推断条件等详情(二)
    Androidproject师进阶之路 :《Android开发进阶:从小工到专家》上市啦!
    POJ1062 昂贵的聘礼(最短路)
    easyui required 提交验证
    leetcode
    【翻译自mos文章】在Oracle单机数据库中定义database service
  • 原文地址:https://www.cnblogs.com/dev1ce/p/10509811.html
Copyright © 2011-2022 走看看