版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_18895975/article/details/75646431
JSONObject与JSONArray的Json字符串创建使用案例
基本区别
JSONObject 数据是用 { } 来表示的,
JSONArray 是由JSONObject构成的数组,用 [ { } , { } , …… , { } ] 来表示
在线工具
http://www.sojson.com/simple_json.html
使用这个可以直接格式化对方的json数据 勾选选择数据类型 其自动解析类型 很实用
案例代码
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public class test {
@SuppressWarnings("unchecked")
public static void main(String[] args) {
SimpleDateFormat dateFormater = new SimpleDateFormat("yyyy-MM-dd");
JSONObject jsonAll=new JSONObject();
jsonAll.put("ReturnValue", 0);
jsonAll.put("MSG", "参数正确");
JSONObject Datalist=new JSONObject();
Datalist.put("Title", "计算机科学");
Datalist.put("BorrowTime", dateFormater.format(new Date()) );
Datalist.put("ReturnTime", dateFormater.format(new Date()) );
jsonAll.put("Datalist", Datalist);
System.out.println(jsonAll.toString());
JSONArray jsonarr=new JSONArray();
List<Map<String,Object>> list=new ArrayList<Map<String,Object>>();
for (int i = 0; i < 2; i++) {
Map<String,Object> map=new HashMap<String, Object>();
map.put("Auther", "张三"+i+1);
map.put("CallNo", i+1);
list.add(map);
}
JSONArray jjArr=jsonarr.fromObject(list);//这种对于jdbctemplat取出的 list<Map<String,Object>>可以直接转换
jsonAll.remove("Datalist");
jsonAll.put("Datalist2", jjArr);
System.out.println(jsonAll.toString());
Object[] shuzu=new Object[]{"大学英语","2016-09-09",21};
jsonAll.put("Datalist2", jsonarr.fromObject(shuzu));
System.out.println(jsonAll.toString());
//{"ReturnValue":0,"MSG":"参数正确","Datalist2":["大学英语","2016-09-09",21]}
}
}
运行结果
{“ReturnValue”:0,”MSG”:”参数正确”,
“Datalist”:{“Title”:”计算机科学”,”BorrowTime”:”2017-07-1”,”ReturnTime”:”2017-07-21”}}
{“ReturnValue”:0,”MSG”:”参数正确”,
“Datalist2”:[{“CallNo”:1,”Auther”:”张三01”},{“CallNo”:2,”Auther”:”张三11”}]}
{“ReturnValue”:0,”MSG”:”参数正确”,
“Datalist2”:[“大学英语”,”2016-09-09”,21]}