从SolrDocument转换为bean

我需要将从Solr检索到的数据转换为特定的类,我尝试了3种不同的方法,但每种方法都存在一些问题。

方法1:使用第三方库 - JSONUtil。

    SolrDocument solrDocument = (SolrDocument) iterator.next();
    String jsonString = JSONUtil.toJSON(solrDocument);
    EventObject eventObject2 = gson.fromJson(jsonString, EventObject.class);

方法2:直接将solrDocument转换为JsonString。

    String jsonString2 = gson.toJson(solrDocument);
    EventObject eventObject3 = gson.fromJson(jsonString2, EventObject.class);

方法3:将solrDocument转换为JSONObject,然后转换为JsonString。

    JSONObject object = new JSONObject(solrDocument);
    String jsonStringFromJsonObject = object.toString();
    EventObject eventObjectFromJsonObject = gson.fromJson(jsonStringFromJsonObject, 
    EventObject.class);

方法4:使用Java Bean

    List<EventObject> EventObjects = response.getBeans(EventObject.class);

方法1的结果无法处理Date或ArrayList Type的字段。结果方法2,方法3和方法4都是一样的,他们处理所有领域的好,但是,ArrayList的领域仍是空白。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值