您现在的位置是:首页 >

轴承钢做刀锋利吗 Hibernate的延迟加载,一个锋利的两面刀

火烧 2022-06-11 06:09:55 1068
Hi er ate的延迟加载,一个锋利的两面刀   延迟加载是罪魁祸首 所谓 成也萧何 败也萧何   我有时发现查询速度很慢 检查才发现是我没有启用延迟加载 造成递归的数据都被加载进来了   我如果加

Hibernate的延迟加载,一个锋利的两面刀  

  延迟加载是罪魁祸首 所谓 成也萧何 败也萧何

  我有时发现查询速度很慢 检查才发现是我没有启用延迟加载 造成递归的数据都被加载进来了

  我如果加上了延迟加载 那么许多页面将无法使用 必须在程序里进行代码级别的递归的延迟加载数据的读取

  这里面涉及到的策略太麻烦了

  对于关联少 层次低的 用着没问题 一旦层次太多了 我宁可放弃面向对象 改用单纯的一个表 一个对象的策略 都保存字段就行了

  需要别的关联的数据 我宁可再次读取 毕竟有缓冲 速度影响不是很大的 而且单表的缓冲 性能绝对好

  还有对于 opensessioninview 这个东西 感觉上可以解决这个问题 但实际上 为了这是为了解决延迟加载而做出的一个愚蠢的决策

  对于使用量很小的 没啥可讨论的 怎么做都没关系 对于使用量大的

   对于小数据量 我宁可让其非延迟加载 这样可以尽快的释放数据库资源 特别是一些锁

   对于大数据量 我想我们需要一个专门的类来保存操作结果 让其只返回我们需要的东西 而不是用什么延迟加载 比如我们一个订单查询 只用到了客户的名字 我们完全没有必要延迟加载客户的其它信息

轴承钢做刀锋利吗 Hibernate的延迟加载,一个锋利的两面刀
lishixinzhi/Article/program/Java/ky/201311/29194  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码