/**
* Created by chaozhang on 2017/12/10.
* 内容介绍:讲解json的
*
* 一 创建Json(有下面几种方式)
* 1:利用JsonObject创建Json, 是用方法put
* 2:利用HashMap构建Json(TreeMap也可以).
* 3:使用JavaBean 构建json.
*
* 二 Json的逆操作(解析Json)
*/
public classJsonTravler {
public static voidmain(String[] args) {
//1 输出用JSONObject方式创建的json
// JSONObject();
//2: 用Map构建Json
//creatJsonByMap();
//3: Javabean 的方式, 这种方式可以重用
//creatJsonByBean();
//4: 读取json内容
readJson();
}
//4: Json逆操作,解析json数据
public static voidreadJson(){
System.out.println(JsonTravler.class.getResource("/"));
File file =newFile(JsonTravler.class.getResource("/wangxiaoer.json").getFile());
String content =null;
try{
content = FileUtils.readFileToString(file);
JSONObject jsonObject =newJSONObject(content);// 把读取到的内容转换为Json
//获取json对象的内容
System.out.println("姓名:"+ jsonObject.getString("name"));
JSONArray majorArry = jsonObject.getJSONArray("major");
for(inti =0; i < majorArry.length(); i++){
System.out.println("技能:"+ majorArry.get(i));
}
}catch(Exception e) {
e.printStackTrace();
}
}
//3: 第三种, 利用JAVABean创建Json
public static voidcreatJsonByBean(){
//1: 创建对象
Diaosi wangxiaoer =newDiaosi();
// 2:封装数据
wangxiaoer.setName("王小二");
wangxiaoer.setAge("27.5");
wangxiaoer.setBirthday("1990-01-01");
wangxiaoer.setSchool("蓝翔");
wangxiaoer.setMajor(newString[]{"理发","挖掘机"});
wangxiaoer.setHas_girlfirend("false");
wangxiaoer.setCar("null");
wangxiaoer.setHource("null");
// 3:创建Json
System.out.println(newJSONObject(wangxiaoer).toString());
}
// 2: 第二种 利用HashMap 构建Json(TreeMap也可以)
public static voidcreatJsonByMap(){
Map wangxiaoer =newHashMap();
Object nullObj =null;// null的要单独拎出来
wangxiaoer.put("name","王小二");
wangxiaoer.put("age",27.5);
wangxiaoer.put("birthday","1990-01-01");
wangxiaoer.put("school","蓝翔");
wangxiaoer.put("major",newString[]{"理发","挖掘机"} );
wangxiaoer.put("has_girlfirend",false);
wangxiaoer.put("car",nullObj );
wangxiaoer.put("hource",nullObj );
// 输出Json
System.out.println(wangxiaoer.toString());
}
// {
// "name":"王小二",
// "age": 27.5,
// "birthday":"1990-01-01",
// "school":"蓝翔",
// "major":["理发","挖掘机"],
// "has_girlfirend":false,
// "car":null,
// "hource":null
// }
// 1:利用JsonObject创建json数据
public static voidJSONObject(){
JSONObject wangxiaoer =newJSONObject();
Object nullObj =null;// null的要单独拎出来
try{
wangxiaoer.put("name","王小二");
wangxiaoer.put("age",27.5);
wangxiaoer.put("birthday","1990-01-01");
wangxiaoer.put("school","蓝翔");
wangxiaoer.put("major",newString[]{"理发","挖掘机"} );
wangxiaoer.put("has_girlfirend",false);
wangxiaoer.put("car",nullObj );
wangxiaoer.put("hource",nullObj );
// 输出Json
System.out.println(wangxiaoer.toString());
}catch(JSONException e) {
e.printStackTrace();
}
}
}