ajax請求數據格式

ajax請求java

參考:https://blog.csdn.net/lutinghuan/article/details/46820023ajax

http://jxd-zxf.iteye.com/blog/2072300json

一、json 字符串轉數組或集合數組

格式:app

[{"jsonContent":"1","url":"http://127.0.0.1:8080/upload/image/201806/c9b59521-9d91-4bb7-bc86-be6d67c114e6.jpg"},{"jsonContent":"2","url":"http://127.0.0.1:8080/upload/image/201806/b487619e-28bc-4ffe-8d65-5e553f6ff799.jpg"},{"jsonContent":"","url":""},{"jsonContent":"","url":""}]post

JSONArray jsonarray = JSONArray.fromObject(invitation.getContent());
List collection = (List) jsonarray.toCollection(jsonarray,InvitationFromJson.class);url

例子1:將表單對象序列化成Json字符串提交spa

  var formArray = editForm.serializeArray();
  var detailFom = detailgrid.datagrid("getData").rows;
  var mainForm = {};
  for (var i=0; i<formArray.length; i++) {
    mainForm[formArray[i].name] = formArray[i].value;
  }
  var detailDate = {};//json對象
  detailDate.entity = mainForm;//主表
  detailDate.ivfDs = detailFom;//明細
  var detailDateStr = JSON.stringify(detailDate);//轉json字符串
  $.ajax({
    url:"/ivf/incubator/save",
    type: 'post',
    dataType: 'json',
    contentType: "application/json; charset=utf-8",
    data:detailDateStr,//json字符串
    success: function(data){
    if(data.result=="sucess"){
    $.messager.alert('提示信息:', '保存成功', 'info',function(){
    });
    }else{
      $.messager.alert('提示信息:', data.message, 'error');
    }
  });.net

參考:https://blog.csdn.net/lishuangzhe7047/article/details/28880009debug

 

例子2:後臺list接收json字符串,自動封裝實體

$(document).ready(function(){
  var saveDataAry=[];
  var data1={"userName":"test","address":"gz"};
  var data2={"userName":"ququ","address":"gr"};
  saveDataAry.push(data1);
  saveDataAry.push(data2);
  $.ajax({
    type:"POST",
    url:"user/saveUser",
    dataType:"json",
    contentType:"application/json",
    data:JSON.stringify(saveDataAry),
    success:function(data){
 
    });
  });
@RequestMapping(value = "saveUser", method = {RequestMethod.POST }})
@ResponseBody
public void saveUser(@RequestBody List<User> users) {
userService.batchSave(users);
}

二、json字符串轉java對象

首先將json字符串轉換爲json對象,而後再解析json對象,過程以下。
JSONObject jsonObject = JSONObject.fromObject(jsonStr);

根據json中的鍵獲得它的值
String name = jsonObject.getString("name");
int num = jsonObject.getInt("num");
String sex = jsonObject.getString("sex");
int age = jsonObject.getInt("age");

將json對象轉換爲java對象
Person jb = (Person)JSONObject.toBean(obj,Person.class);//將建json對象轉換爲Person對象
三、將java對象轉換爲json字符串
先將java對象轉換爲json對象,在將json對象轉換爲json字符串
JSONObject json = JSONObject.fromObject(obj);//將java對象轉換爲json對象
String str = json.toString();//將json對象轉換爲字符串

參考:https://blog.csdn.net/gchb9527/article/details/8688279

 

彙總:JSON 字符串 與 java 對象的轉換

1. 把java 集合或數組轉換爲json對象數組,並轉爲字符串
  JSONArray array = JSONArray.fromObject(list);
  String jsonstr = array.toString();

2.把JSON字符串轉換爲JAVA 對象數組
  JSONArray json = JSONArray.fromObject(userStr);//userStr是json字符串
  List<User> users= (List<User>)JSONArray.toCollection(json, User.class);
3. 把java對象轉換成json對象,並轉化爲字符串
  JSONObject object = JSONObject.fromObject(user);
  Log4jInit.ysulogger.debug(object.toString());

4.把JSON字符串轉換爲JAVA 對象
  JSONObject jsonobject = JSONObject.fromObject(jsonStr);
  User user= (User)JSONObject.toBean(object,User.class);

java對象或集合轉json字符串
JSONSerializer.toJSON(obj);
JSONSerializer.toJSON(List);

 

 

四、表單序列化

①表單序列化成j數組,再拼接成須要的json字符串

var formArray = $articleForm.serializeArray();

 ②表單序列化

var formArray = $articleForm.serialize();
後臺實體接收,直接把前臺傳過來的參數寫成對應的實體類,會自動進行封裝

格式:title=222&articleCategoryId=60&cover=&_isPublication=false&publication=true&_isTop=false&publishType=0&pictureContent1=11&url1=&pictureContent2=&url2=&pictureContent3=&url3=&pictureContent4=&url4=&csrfToken=32d129b11f40b41851a0212b6cd0e779

相關文章
相關標籤/搜索