java中反射场景优化效率改为Map的过程

遇到问题:项目列表数据查询之后需要通过字典翻译,当数据量上千的时候响应效率竟然高达好几秒,更别说上万了。
查找根源:通过追踪源码,发现数据字典翻译时,是通过反射对数据进行get/set。
处理过程:
一.通过修改查询sql进行join,直接查出数据字典要翻译的值。
二.现实是,数据字典不在同一个数据库,而且在数据库中处理大数据量数据翻译也是不建议的。那么只能自己重写翻译逻辑。

  1. 通过测试map的get过程效率可以满足当前需要
  2. 查询出所有涉及的数据字典项和翻译值,并存到map当中,格式为: { ”filed1“:{ "类别标识1":"要翻译的值1", ... }, ”filed2“:{ "类别标识1":"要翻译的值1", ... } }
  3. 改造sql FILED1 as filed1
  4. 查询结果返回list格式
  5. 遍历查询结果list,在根据每一行的数据进行分析需要转化的数据字典值,重新赋值
  6. 输出新的list返回数据集

处理结果:效率大幅提升,满足应用要求

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值