服务器端json解析
1.客户端通过http传上来的可定都是json数据啊,json数据传到服务器端,就要通过键值对getkey方法得到具体值,对吧,然后再操控具体值。
2.JSONObject与JSONArray:
JsonObject和JsonArray区别就是JsonObject是对象形式,JsonArray是数组形式
3.
需要依赖的包:
commons-lang.jar
commons-beanutils.jar
commons-collections.jar
commons-logging.jar
ezmorph.jar
json-lib-2.2.2-jdk15.jar
生成JSON:
- public class Test2 {
- public static void main(String[] args) {
- /* 创建JsonObject第一种方法 */
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("UserName", "ZHULI");
- jsonObject.put("age", "30");
- jsonObject.put("workIn", "ALI");
- System.out.println("jsonObject1:" + jsonObject);
- /* 创建JsonObject第二种方法 */
- HashMap<String, String> hashMap = new HashMap<String, String>();
- hashMap.put("UserName", "ZHULI");
- hashMap.put("age", "30");
- hashMap.put("workIn", "ALI");
- System.out.println("jsonObject2 FROM HASHMAP:" + JSONObject.fromObject(hashMap));
- /* 创建一个JsonArray方法1 */
- JSONArray jsonArray = new JSONArray();
- jsonArray.add(0, "ZHULI");
- jsonArray.add(1, "30");
- jsonArray.add(2, "ALI");
- System.out.println("jsonArray1:" + jsonArray);
- /* 创建JsonArray方法2 */
- ArrayList<String> arrayList = new ArrayList<String>();
- arrayList.add("ZHULI");
- arrayList.add("30");
- arrayList.add("ALI");
- System.out.println("jsonArray2 FROM ArrayList:" + JSONArray.fromObject(arrayList));
- /* 如果JSONArray解析一个HashMap,则会将整个对象的放进一个数组的值中 */
- System.out.println("jsonArray FROM HASHMAP:" + JSONArray.fromObject(hashMap));
- /* 组装一个复杂的JSONArray */
- JSONObject jsonObject2 = new JSONObject();
- jsonObject2.put("UserName", "ZHULI");
- jsonObject2.put("age", "30");
- jsonObject2.put("workIn", "ALI");
- jsonObject2.element("Array", arrayList);
- jsonObject2.element("Object", jsonObject);
- System.out.println("jsonObject2:" + jsonObject2);
- }
- }