###今天看了一下有关 JSON 方面的知识,总结一下构造 JSON 格式数据的 3 种方法。
- 通过 JSONObject 构建
- 通过 HashMap 构建
- 通过 JavaBean 构建(推荐,业务对象可以重用)
org.json包下载地址:http://www.json.org/
下载源码:
源码使用方式:之前使用的 jar 包也是源码包编译后打包成的class文件,所以可能不太习惯源码的使用方式。
在 java 工程中,新建 org.json包,把刚下载的源码文件解压复制到 org.json 包中,然后就可以进行相关的开发了。
JSON 格式数据构造源代码:
import java.util.HashMap;
import java.util.Map;
import org.json.JSONException;
import org.json.JSONObject;
/**
* Json测试用例
*
*/
public class jsonObjectSample {
public static void main(String[] args) {
// JSONobject();
// createJsonByMap();
createJSONByBean();
}
/**
* 使用 JSONobject 构建 JSON
*/
private static void JSONobject() {
JSONObject jon = new JSONObject();
Object nulObj = null;
try {
jon.put("name", "test");
jon.put("age", 25.2);
jon.put("birthday", "1995-03-05");
jon.put("major", new String[] { "理发", "挖掘机" });
jon.put("girl", false);
jon.put("car", nulObj);
System.out.println(jon);
} catch (JSONException e) {
e.printStackTrace();
}
}
/**
* 通过 HashMap 构建 JSON
*/
private static void createJsonByMap() {
Map<String, Object> jon = new HashMap<String, Object>();
Object nulObj = null;
try {
jon.put("name", "test");
jon.put("age", 25.2);
jon.put("birthday", "1995-03-05");
jon.put("major", new String[] { "理发", "挖掘机" });
jon.put("girl", false);
jon.put("car", nulObj);
System.out.println(new JSONObject(jon).toString());
} catch (JSONException e) {
e.printStackTrace();
}
}
/**
* 使用 JavaBean 构建JSON
* 推荐使用第三种方式,业务对象可以重用
*/
private static void createJSONByBean() {
Person person = new Person();
Object nulObj = null;
person.setName("test");
person.setAge(25.3);
person.setGirl(false);
person.setMajor(new String[]{"test","testt"});
person.setBirthday("2016-02-08");
person.setCar(nulObj);
System.out.println(new JSONObject(person));
}
}