首页 > 代码库 > SpringMVC @RequestBody接收Json对象字符串 demo

SpringMVC @RequestBody接收Json对象字符串 demo

springmvc 的这个 @RequestBody 用得比较少,今天看了一下,还是很方便.

 @RequestBody 接收类似 [{name: "test"}, {name: "张三"}] 这样的json字符串.

 

先看页面:

<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Insert title here</title><script src="https://code.jquery.com/jquery-3.1.1.min.js"></script><script type="text/javascript">       function test(){            var saveDataAry=[];              var data1={"name":"test"};              var data2={"name":"张三"};              saveDataAry.push(data1);              saveDataAry.push(data2);                     $.ajax({                 type:"POST",                 url:"http://localhost/test/student",                 dataType:"json",                      contentType:"application/json",                               data:JSON.stringify(saveDataAry),                 success:function(data){                    alert(data)                                   }              });       }</script></head><body>    <input type="button" onclick="test()" value="http://www.mamicode.com/测试"></body></html>

 

最后看后台代码:

import java.util.List;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.bind.annotation.RestController;@RestController@RequestMapping("/test")public class TestController {    @ResponseBody    @RequestMapping(value="/student",method=RequestMethod.POST)    public String student(@RequestBody List<Student> students ){        for(Student s : students){            System.out.println("学生姓名:"+s.getName());        }        return "ok";    }}class Student{        private String name;    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }        }

 

小结一下,这样传参数就是json字符串化.

 

SpringMVC @RequestBody接收Json对象字符串 demo