FastJson 解析JSON/映射实体

fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。

主要特点:

  • 快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson)

  • 强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Date或enum)

  • 零依赖(没有依赖其它任何类库除了JDK)


Github : https://github.com/alibaba/fastjson


JSON解析:
public class FastJsonMain {

	static String json = "{\"study\": 10,\"study_course_count\": 10, \"recieved_reg_form_count\": 0,\"unread_count\": 5,\"teach_course_count\": 8,\"avatar\": \"1316634098115-02-57\",\"user_id\": 201,\"nickname\": \"Asus人名\"}";
	static String arrayAyy="[[14,\"小学语文\"],[154,\"美食\"],[72,\"高中物理\"],null,[50,\"高中化学\"],[15,\"小学数学\"],[13\"英语\"],null,[1,\"其他英语培训\"],null]";
	
			
	
	/**
	 * Json 转换 实体类 提示:FastJson在映射实体上非常棒, json有的K,实体没有,依然不影响解析..
	 */
	private void Json2Eetity() {
		// TODO Auto-generated method stub
		Welcome welcome = JSON.parseObject(json, Welcome.class);
		System.out.println(welcome.toString());
		System.out.println(welcome.getNickname());
	}

	/**
	 * 实体类 转换 Json
	 */
	private void Eetity2Json() {
		// TODO Auto-generated method stub
		Welcome welcome = new Welcome(2, 3, 4, 5, "imagUrl", 11, "Mers");
		String json = JSON.toJSONString(welcome, true);
		System.out.println("实体转换Json:" + json);
	}

	/**
	 * list集合转json格式字符串
	 */
	public void list2Json() {
		List<Welcome> list = new ArrayList<Welcome>();
		Welcome welcome1 = new Welcome(2, 3, 4, 5, "imagUrl", 11, "Mers");
		Welcome welcome2 = new Welcome(22, 33, 44, 55, "imag", 65, "Kers");
		Welcome welcome3 = new Welcome(64, 33, 34, 05, "imagUrl", 43, "Wers");
		Welcome welcome4 = new Welcome(62, 75, 41, 25, "imagUrl", 109, "Oers");
		list.add(welcome1);
		list.add(welcome2);
		list.add(welcome3);
		list.add(welcome4);
		String json = JSON.toJSONString(list, true);
		System.out.println("ist集合转json格式字符串 :" + json);
	}
	
	
	/**
	 * String转换 JSONArray
	 * 并且去除null
	 */
	private void String2JSONArray() {
		// TODO Auto-generated method stub
		JSONArray array=JSONArray.parseArray(arrayAyy);
		System.out.println(array);
		System.out.println("长度: "+array.size());
		
		Collection nuCon = new Vector(); 
		nuCon.add(null); 
		array.removeAll(nuCon);
		
		System.out.println(array);
		System.out.println("长度: "+array.size());
	}

	public static void main(String[] args) {
		FastJsonMain main = new FastJsonMain();
		
		main.Json2Eetity();
		System.out.println(" ");
		
		main.Eetity2Json();
		System.out.println("");
		
		main.list2Json();
		System.out.println(" ");
		
		main.String2JSONArray();
	}


	
}


以上fastjson-1.1.34: FastJson(源码+jar+Dome)

你可能感兴趣的:(json,android,解析,fastjson,fastjson-1.1.34)