Java list泛型与JSON的相互转换(含jar包下载链接)


摘要
在Java web中,在数据库查询出来的list需要先转换成json格式,然后再转换成字符串才能传输。这里介绍List泛型与JSON互换的方法。


转换方法如下:

List<Bean> list = new ArrayList<Bean>();       
//java list转成json array
JSONArray json_arr =JSONArray.fromObject(list);
//json array 转String
String json_str = json_arr.toString();

//java对象 转成 json对象
JSONObject json= JSONObject.fromObject(BeanInstance);
//json对象 转 String
String json_str=json.toString());

         
//获取json array
JSONArray jsonArray = JSONArray.fromObject(json);
//json转成java list
List<String> list = (List)JSONArray.toCollection(jsonArray);

//获取json object对象
JSONObject jsonObject = JSONObject.fromObject(BeanInstance);
//json转化为java 对象
Object object = (Object) JSONObject.toBean(jsonObject);

注意:运用上述方法转换List时,如果从数据查询出来的数据含有java.sql.Date(即时间类型的字段),极有可能报如下错误:

//net.sf.json.JSONException:java.lang.reflect.InvocationTargetException

解决办法

//将数据库取出的时间转换成util的Date
java.util.Date date = new java.util.Date(rs.getDate("blog_date").getTime());		
//写入到bean中
bVo.setBlogDate(date);

搞定!


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值