实现JavaBean和json之间的相互转换

19 篇文章 0 订阅
11 篇文章 0 订阅

使用json-lib组件实现
 *    需要
 *     json-lib-2.4-jdk15.jar
 *     ezmorph-1.0.6.jar
 *     commons-collections-3.1.jar
 *     commons-lang-2.0.jar

支持

UserInfos实体类

private String id;
private String name;
..get/set

 

LoginAccount实体类

private String id;
private String account;
private UserInfos userInfos;
..get/set

 

javaBean转换为Json

//创建LoginAccount对象的集合  
		        List<LoginAccount> listJson=new ArrayList<LoginAccount>();  
		        //制作数据  
		        LoginAccount lAccount1=new LoginAccount();
		        lAccount1.setId("L001");
		        lAccount1.setAccount("xiaoMing");
			    UserInfos userInfos1=new UserInfos();  
			    userInfos1.setId("001");  
			    userInfos1.setName("小明");
			    lAccount1.setUserInfos(userInfos1);
			    
			    LoginAccount lAccount2=new LoginAccount();
			    lAccount2.setId("L002");
			    lAccount2.setAccount("xiaoHong");
			    UserInfos userInfos2=new UserInfos();  
			    userInfos2.setId("002");  
			    userInfos2.setName("小红");  
			    lAccount2.setUserInfos(userInfos2);
			    
			    LoginAccount lAccount3=new LoginAccount();
			    lAccount3.setId("L003");
			    lAccount3.setAccount("xiaoHei");
			    UserInfos userInfos3=new UserInfos();  
			    userInfos3.setId("003");  
			    userInfos3.setName("小黑");  
			    lAccount3.setUserInfos(userInfos3);
		        //添加数据  
			    listJson.add(lAccount1);  
			    listJson.add(lAccount2);  
			    listJson.add(lAccount3);  
		        //将List转换为JSON  
		        JSONArray jsonArray=JSONArray.fromObject(listJson);  
		        //输出JSON字符串
		        System.out.println(jsonArray.toString());


 

 

json转换为javaBean

//创建JSON字符串
			String loginAccountJSON="[{id:\"L0001\",account:\"xiaoMing\",userInfos:{id:\"U0001\",name:\"小明\"}},{id:\"L0001\",account:\"xiaoHong\",userInfos:{id:\"U0002\",name:\"小红\"}},{id:\"L0001\",account:\"xiaoHei\",userInfos:{id:\"U0003\",name:\"小黑\"}}]";
			//创建JSON对象
			JSONArray jsonArrays = (JSONArray) JSONSerializer.toJSON(loginAccountJSON);
			//设置list集合
			List list=(List) JSONSerializer.toJava(jsonArrays);
			//遍历
			for(Object object:list){
				JSONObject jsonObject = JSONObject.fromObject(object);
				LoginAccount loginAccount = (LoginAccount) JSONObject.toBean(jsonObject,LoginAccount.class);
				//输出获得的LoginAccount实体类的数据
				System.out.println("id="+loginAccount.getId()+";account="+loginAccount.getAccount()+";userInfo.id="+loginAccount.getUserInfos().getId()+";userInfo.name="+loginAccount.getUserInfos().getName());
			}


 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值