Java json转List

public static void main(String[] args) throws IllegalAccessException, InvocationTargetException {
		
		String str = "[{\"repaymentTime\":\"2019-05-15 10:40:00\",\"repaymentMoney\":\"840\",\"consumption\":[{\"consumptionTime\":\"2019-05-12 15:20:00\",\"consumptionMoney\":\"430\"},{\"consumptionTime\":\"2019-05-13 10:05:00\",\"consumptionMoney\":\"410\"}]"
	                + "}, {\"repaymentTime\":\"2019-05-20 10:40:00\",\"repaymentMoney\":\"300\",\"consumption\":[{\"consumptionTime\":\"2019-05-16 11:02:00\",\"consumptionMoney\":\"120\"},{\"consumptionTime\":\"2019-05-18 13:00:00\",\"consumptionMoney\":\"180\"}]}]";
	    List list = JSONArray.fromObject(str);
	    System.out.println(list);
	    for (Map map: list) {
	    	// map转entity
	    	PlanDTO dto = JSON.parseObject(JSON.toJSONString(map), PlanDTO.class);
	    	
	    	System.out.println(dto.getRepaymentTime());
	        System.out.println(dto.getRepaymentMoney());
	        
	        JSONArray consumptionArray = (JSONArray)map.get("consumption");
	        List consumptionList = (List) consumptionArray.toCollection(consumptionArray, Consumption.class);
	        for (Consumption consumption: consumptionList) {
	        	
	        	System.out.println(consumption.getConsumptionTime());
	        	System.out.println(consumption.getConsumptionMoney());
			}
	    }

	}

PlanDTO.java

public class PlanDTO {
	
	private String repaymentTime; // 时间
	
	private String repaymentMoney; // 金额
	
	List consumption = new ArrayList(); // 消费

	public String getRepaymentTime() {
		return repaymentTime;
	}

	public void setRepaymentTime(String repaymentTime) {
		this.repaymentTime = repaymentTime;
	}

	public String getRepaymentMoney() {
		return repaymentMoney;
	}

	public void setRepaymentMoney(String repaymentMoney) {
		this.repaymentMoney = repaymentMoney;
	}

	public List getConsumption() {
		return consumption;
	}

	public void setConsumption(List consumption) {
		this.consumption = consumption;
	}
	
}

Consumption.java

public class Consumption {

	private String consumptionTime; // 时间
	
	private String consumptionMoney; // 金额

	public String getConsumptionTime() {
		return consumptionTime;
	}

	public void setConsumptionTime(String consumptionTime) {
		this.consumptionTime = consumptionTime;
	}

	public String getConsumptionMoney() {
		return consumptionMoney;
	}

	public void setConsumptionMoney(String consumptionMoney) {
		this.consumptionMoney = consumptionMoney;
	}
}

 

你可能感兴趣的:(Java,笔记)