w747770454 2017-07-05 14:07 采纳率: 40%
浏览 873
已采纳

(请大神们看描述,标题说不好)hibernate 返回对象预处理问题

问题1:
一个查询返回的集合,返回的集合部分字段需要处理成前端可读内容。如某字段存储的是数字格式的IP'12345678'需要查询后转换为字符串'1.1.1.1'。以前的做法就是写一个转换类,迭代集合然后重新封装返回。但是总感觉这样效率极低,尤其是转换的内容较多,转换方式复杂的时候。想找到一个好办法解决这个问题。开始是想在数据库写函数,但是第一无法实现所有业务上的转换,再一个跟踪维护较为费神。后来朋友提了一个想法。如list 《bean》类型数据 在bean对应的set方法里增加处理。数据查询返回后直接是转换好的集合。感觉找到了思路。由于最近没有编译环境没办法实际证实。我对hibernate只限于使用不确定此方法是否可行,请各位大神指点
问题二:
后来想到了另一种业务场景 返回的内容是list《map《String,object》》 结构。
map中部分key value需要转换 并且 某些key value 的转换 基于其他key value进行判断而进行。 这种情况下我首先想到的是自定义一个hashMap 类。然后进行转换处理。再hibernate返回集合中返回此类型的list《myMapS《String,object》》.由于有基于其他key的判断转换。此类我最后编不下去了。想到有没有熟悉hibernate原理的。再hibernate 每存入一条list 的时候,进行一次预处理。这是我觉得最理想的方法。
期待CSDN大神们给出思路,解决这个问题。十分感谢。

  • 写回答

2条回答 默认 最新

  • w747770454 2017-08-07 02:27
    关注

    已经找到架构师解决此问题

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料