java json转list_json转javabean

java json转list

_json转javabeanpublicstaticvoidmain(String[]args)throwsIllegalAccessException,InvocationTargetException{ Stringstr=”[{\”repaymentTime\”:\”2019-05-1510:40:00\”,\”repaymentMoney\”:\”840\”,\”consumpti…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

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<Map> 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<Consumption> consumptionList = (List<Consumption>) 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> consumption = new ArrayList<Consumption>(); // 消费

	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<Consumption> getConsumption() {
		return consumption;
	}

	public void setConsumption(List<Consumption> 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;
	}
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195939.html原文链接:https://javaforall.net

(0)
上一篇 2025年10月7日 下午2:22
下一篇 2025年10月7日 下午3:01


相关推荐

  • OSError: [WinError 1455] 页面文件太小,无法完成操作。 Error loading “D:\Anaconda\envs\pytorch-1.4\lib\site-package

    OSError: [WinError 1455] 页面文件太小,无法完成操作。 Error loading “D:\Anaconda\envs\pytorch-1.4\lib\site-package1、一是内存不足,重启一下pycharm2、把num_works设置为0

    2022年6月24日
    86
  • EnterpriseLibrary6.0 log2database

    EnterpriseLibrary6.0 log2database1、引用EnterpriseLibrary6.0相关dll2、安装Microsoft.Practices.EnterpriseLibrary.ConfigConsoleV6.vsix  主要为了方便编辑config文件,不是必须安装,安装后需要更改解决方案属性,将EnterpriseLibraryv6binariespath指向企业库6.0的bin目录3、执行sql脚本创…

    2022年10月20日
    6
  • RuntimeException和非RuntimeException的区别「建议收藏」

    RuntimeException和非RuntimeException的区别「建议收藏」通俗一点:   Error:系统级别的错误,如栈溢出内存溢出之类 ,此类错误一般情概况保证程序能安全退出即可   Exception:分为RuntimeException 和 非RuntimeException                                                                           …

    2022年7月18日
    18
  • 深入理解C++中的mutable关键字

    深入理解C++中的mutable关键字mutable 的中文意思是 可变的 易变的 跟 constant 既 C 中的 const 是反义词 在 C 中 mutable 也是为了突破 const 的限制而设置的 被 mutable 修饰的变量 将永远处于可变的状态 即使在一个 const 函数中 我们知道 如果类的成员函数不会改变对象的状态 那么这个成员函数一般会声明成 const 的 但是 有些时候 我们需要在 const 的函数里面修改一些跟类状态

    2026年3月19日
    2
  • Python递归详解

    Python递归详解递归的依据在数学中,其实就是数学中的数学归纳法。一、数学归纳法什么是数学归纳法?最简单和常见的数学归纳法是证明当n等于任意一个自然数时某命题成立。证明分下面两步:证明当n=1时命题成立。假设n=m时命题成立,那么可以推导出在n=m+1时命题也成立。(m代表任意自然数)这种方法的原理在于:首先证明在某个起点值时命题成立,然后证明从一个值到下一个值的过程有效。当这两点都已经证明…

    2022年6月17日
    42
  • crunch生成字典

    crunch生成字典crunch 参数 min 设定最小字符串长度 max 设置最大字符串出行度 o 将生成的字典保存在指定文件 t 指定密码输出的格式 p 指定元素组合特殊字符 代表数字 代表特殊符号 代表小写字母 代表大写字母 crunch24 gt 1 txtcrunch77 tadmin gt 2 txtcrunch66 f usr share crunch charset lsthex lower o3 txtcat usr s

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号