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="测试">
</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字符串化.

时间: 2024-10-16 15:03:22

SpringMVC @RequestBody接收Json对象字符串 demo的相关文章

SpringMVC @RequestBody接收Json对象字符串

转:http://www.cnblogs.com/quanyongan/archive/2013/04/16/3024741.html 以前,一直以为在SpringMVC环境中,@RequestBody接收的是一个Json对象,一直在调试代码都没有成功,后来发现,其实 @RequestBody接收的是一个Json对象的字符串,而不是一个Json对象.然而在ajax请求往往传的都是Json对象,后来发现用 JSON.stringify(data)的方式就能将对象变成字符串.同时ajax请求的时候也

SpringMVC @RequestBody接收JSON报HTTP 415问题的解决方法

现在做的一个项目是做app服务端的,需要从app接收json的请求数据,服务端框架用的是SpringMVC,所以自然而然的想到直接用@RequestBody来接收json数据, 格式如下: public ResponseProtocolMap login(@RequestBody JSONObject requestJson,HttpServletRequest request) { ResponseProtocolMap responseProtocolMap = null; //中间内容省略

SpringMVC @RequestBody 接收Json数组对象

<script type="text/javascript"> $(document).ready(function(){ $.ajax({ type:'POST', url:'<%=path%>/user/ceshi.do', dataType:"json", contentType:"application/json", data:JSON.stringify([{id:"1",name:"

【Spring学习笔记-MVC-6】SpringMVC 之@RequestBody 接收Json数组对象

作者:ssslinppp       1. 摘要 程序流程: 前台使用ajax技术,传递json字符串到后台: 后台使用Spring MVC注解@RequestBody 接受前台传递的json字符串,并返回新的json字符串到前台: 前台接受后台传递过来的json数据,并显示. 2. 前台界面和js <%@ page language="java" pageEncoding="UTF-8"%> <% String path = request.ge

json对象字符串互转

json对象字符串互转 1.Node.js中 JSON.parse(jsonstr); //可以将json字符串转换成json对象 JSON.stringify(jsonobj); //可以将json对象转换成json字符串 2.Jquery中 $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象 3.javaScript eval('(' + jsonstr + ')'); //可以将json字符串转换成

springmvc接口接收json类型参数设置

Springmvc需要如下配置: 1.开启注解 <!-- 开启注解--> <mvc:annotation-driven /> 2.加入相关bean <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> <property name="messageConverters"> <list

@RequestBody接收ajax的json字符串

在使用ajax进行请求,并传递参数时,偶尔需要把数组作为传递参数,这是就要使用@RequestBody来解决这个问题 在页面端的处理: (1)利用JSON.stringify(arr)需要把json对象数组转变成一个json对象字符串 (2)在ajax的参数中设置"contentType": "application/json" $(function(){ $("#exe").on("click",function(){ va

springmvc json字符串转化成json对象

问题出现在 :页面数据列表的展示出现 [object HTMLInputElement] 找到问题的所在原因后又三种解决方案 一:格式化json字符串为json对象字符串 success:function(data){ data=eval('('+data+')'); //在返回的数据里加上这就代码, alert(data);} 二:指定数据类型为json $.ajax({ type:'post', data:{pageSize:15,currentPage:1}, url:'<%=ctxPat

JSON对象和JSON字符串

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>JSON.parse()</titl