ajax请求数据格式

ajax请求

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

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

1、json 字符串转数组或集合

格式:

[{"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":""}]

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

例子1:将表单对象序列化成Json字符串提交

  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');
    }
  });

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

扫描二维码关注公众号,回复: 1512606 查看本文章

例子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);
}

2、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对象
3、将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. 把java对象转换成json对象,并转化为字符串
  JSONObject object = JSONObject.fromObject(user);
  Log4jInit.ysulogger.debug(object.toString());
3.把JSON字符串转换为JAVA 对象数组
  JSONArray json = JSONArray.fromObject(userStr);//userStr是json字符串
  List<User> users= (List<User>)JSONArray.toCollection(json, User.class);
4.把JSON字符串转换为JAVA 对象
  JSONObject jsonobject = JSONObject.fromObject(jsonStr);
  User user= (User)JSONObject.toBean(object,User.class);

猜你喜欢

转载自www.cnblogs.com/spdboke/p/9150111.html