springMVC处理JSON

主要包括如下内容:

1、SpringMVC接收JQuery的异步请求,然后分别得到请求中的数据;

2、SpringMVC接收JQuery的异步请求,然后把请求数据直接分装为对象;

3、以JSON格式返回信息。

0、公有配置信息

在Maven pom.xml主要添加如下依赖

org.springframework spring-webmvc 4.3.2.RELEASE

com.fasterxml.jackson.core jackson-databind 2.8.1

Spring-mvc.xml中的配置信息(无需配置其它信息)

mvc:annotation-driven

1、SpringMVC接收JQuery的异步请求,然后分别得到请求中的数据

如果希望Server端按照提交的属性分别进行接收,ajax请求格式:

//ajax提交

var data1 = {

    'title':$("#schemeTitle").val(),

    'planOwnId':$("#planId").val(),

    'absContent':$("#schemeAbsContent").val()

};

$.ajax({

    type : "POST",

    url : "scheme/add",

    data : data1,

    success : function(data) {...}

});

Server端相应的Controller中的处理方法:

@RequestMapping(value="/add",method = {RequestMethod.POST})

@ResponseBody

public String add1(String title,long planOwnId,String absContent) {

    System.out.println(title+planOwnId+absContent);

    return "success";

}

注意:这里SERVER端返回的信息格式是字符串不是JSON。

2、SpringMVC接收JQuery的异步请求,然后把请求数据直接分装为对象;

希望server端封装成对象接收,关键步骤:

js中ajax请求中添加contentType : "application/json"

var saveDataAry = [];

var data1 = {

    'title':$("schemeTitle").val(),'absContent':$("schemeAbsContent").val()

};

var data2 = {

    'title':'winzip2','absContent':'password2'

};

    saveDataAry.push(data1);

    saveDataAry.push(data2);

$.ajax({

    type : "POST",

    url : "scheme/add",

    dataType : "json",//如果Server返回的是JSON格式的数据

    contentType : "application/json",

    data : tt = JSON.stringify(saveDataAry),

    success : function(data) {

        alert(data);

    }

});

Server端相应的Controller中的处理方法:

@RequestMapping(value="/add",method = {RequestMethod.POST})

@ResponseBody

public String add1(@RequestBody List plans) {

    service.batchSave(plans);

    return plans;//以JSON格式返回数据到Client

}

你可能感兴趣的:(springMVC处理JSON)