fastjson实现json数据与对象, 集合之间的转换

fastjson是阿里巴巴开源的用于处理json格式数据的工具.

使用fastjson需要引入第三方jar包:

实体类Product类和前面Gson解析数据时一致,此处不再上代码.

package Exercise1_fastjson;

import java.util.List;

import com.alibaba.fastjson.JSON;
/**
 * @author huangxinyi
 * Fastjson实现json与对象,json与集合的相互转换
 * 
 */
public class Test {
	@org.junit.Test
	public void test() {
		
		String jsonlist = "[{\"brand\":\"联想\",\"type\":\"电脑\",\"color\":\"白色\",\"price\":\"3000\"}"+
				"{\"brand\":\"小米\",\"type\":\"手机\",\"color\":\"黑色\",\"price\":\"2500\"}"+
                "{\"brand\":\"华为\",\"type\":\"手机\",\"color\":\"白色\",\"price\":\"2000\"}"+
                "{\"brand\":\"戴尔\",\"type\":\"电脑\",\"color\":\"蓝色\",\"price\":\"4000\"}"+
                "{\"brand\":\"苹果\",\"type\":\"手机\",\"color\":\"红色\",\"price\":\"5000\"}]";
		
		Product p = new Product("华为","手机","黑色",4000);
		//测试对象转json
		System.out.println(JSON.toJSONString(p));
		
		//测试json转对象
		System.out.println(jsonToPro(JSON.toJSONString(p)));
		String pjson = "{\"brand\":\"联想\",\"type\":\"电脑\",\"color\":\"白色\",\"price\":\"3000\"}";
		System.out.println(jsonToPro(pjson));
		
		//测试json转集合
		System.out.println(jsonToList(jsonlist));
		
		//测试集合转json
		System.out.println(listToJson(jsonToList(jsonlist)));
		
	}
	
	//对象转json
	private String proToJson(Product p){
		return JSON.toJSONString(p);
	}
	
	//json转对象
	private Product jsonToPro(String json){
		return JSON.parseObject(json, Product.class);
	}
	
	//集合转json
	private String listToJson(List<Product> plist){
		return JSON.toJSONString(plist);
	}
	
	//json转集合
	private List<Product> jsonToList(String jsonlist){
		return JSON.parseArray(jsonlist, Product.class);
	}
	
}

猜你喜欢

转载自blog.csdn.net/pandalovey/article/details/80463484