java json字符串转对象

java JSON字符串转对象

文中涉及到jar包为:

net.sf.json.JSONArray;
net.sf.json.JSONObject;

话不多,直接撸代码 :

仅供参考


	//数据对象格式
	String jsonStr = "[{'prov': '陕西省','city': '西安市','area': '莲湖区','street': '东大街'},{'prov': '陕西省','city': '西安市','area': '雁塔区','street': '芙蓉东路'}]";
	JSONArray json = JSONArray.fromObject(jsonStr);
	
	//定义一个list集合,存解析出来的对象
	List address = new ArrayList();
	
	if(json.size()>0) {
		for (int i = 0; i < json.size(); i++) {
			//遍历数组,把每一个对象转成json对象
			JSONObject job = json.getJSONObject(i);
			//将json对象转成AddressInfo
			AddressInfo rsp = (AddressInfo)JSONObject.toBean(job,AddressInfo.class);
			//将AddressInfo添加到集合中
			address.add(rsp);
		}
	}
	
	//遍历集合,打印部分值,也可以在此进行,添加数据库,获取导出
	address.forEach(item->{
		System.out.println(item.getCity());
		System.out.println(item.getArea());
	});	

AddressInfo实体类

public class AddressInfo {

	private String prov;
	private String city;
	private String area;
	private String street;

	public void setProv(String prov) {
		this.prov = prov;
	}

	public String getProv() {
		return prov;
	}

	public void setCity(String city) {
		this.city = city;
	}

	public String getCity() {
		return city;
	}

	public void setArea(String area) {
		this.area = area;
	}

	public String getArea() {
		return area;
	}

	public void setStreet(String street) {
		this.street = street;
	}

	public String getStreet() {
		return street;
	}

}

最后是控制台打印出的内容:

西安市
莲湖区
西安市
雁塔区

** 本文仅供参考,另提供一个

在线JSON字符串转Java实体类(JavaBean、Entity)

http://www.bejson.com/json2javapojo/new/?tdsourcetag=s_pcqq_aiomsg

操作方法很简单,
将你的json数据,直接复制进去,就会生成实体类!


如有错误,

还请包涵,

新手上路,

多多指教,

请系好安全带!!!!

你可能感兴趣的:(java)