spring mvc controller json数据

项目中遇到个批处理,需要前台传递一个json格式对象数组,如下:
var data={
   "wos":[{"id":1,"satisfaction":10,"satisfactionRemark":""},
  {"id":2,"satisfaction":20,"satisfactionRemark":""},
  {"id":3,"satisfaction":30,"satisfactionRemark":""}]
 };
我用的是jQuery.ajax的post将数据扔给controller接收

解法1:

 $.ajax(
                {
                  url:url, 
                  type: "POST", 
                  data: JSON.stringify(x), 
                  success: function(data){
                     
                  }, 
                  dataType: "json",
                  contentType: "application/json"
               } );

@RequestBody 用这个接受你的对象参数

public @ResponseBody String saveDocumentBook(@RequestBody 对象 x, HttpServletRequest request)

我后来是后台先取得要传递的数组参数然后转化的,(T[])JSONArray.toArray(JSONArray.fromObject(wosStr), T.class);T是要转换成的类型
解法2:

前台ajax传参数的时候转好json,后台用 @RquestBody List wos 来接就可以了

$.ajax({
                url : url,
                type : "POST",
                contentType: "application/json; charset=utf-8",
                datatype:"json",
                data : $.toJSON(data),
                success : function(data, stats) {//...}

 

posted @ 2015-12-31 10:32  星辰之力  阅读(351)  评论(0编辑  收藏  举报