xinsuichenfu 2015-04-10 02:36
浏览 677

Java双向关联的一个纠结问题

在实体中例如一对多,我们Java使用关系型数据库当然希望双相关联。这样就会出现以下的问题:
使用hibernate配置实体关联的时候有一个属性叫做lazy,这个属性告诉hibernate有关联关系的时候,我是不是需要懒加载。如果lazy是true,很多人都会遇到这样的问题:no session,当然,no session有解决方案:使用配置让session延时关闭,但是这样对项目的性能显然是有影响的,会造成连接池拥挤,我们先暂时不使用这种比较笨的方式。至于no session有木有其他的解决方案,鄙人知识有限,就不知道了。
如果这个lazy属性值为false时,代表这在加载类的时候,如果有关联关系出现,会直接查询数据库,得到关联实体对象数据,如果两边都为false的话,一边加载另一边,另一边又会加载这一边,这样循环加载,就会栈溢出。如果一边false,一边true,和lazy=true是一个效果,避免不了no session的出现。求一个合理的解决方案:既不会影响项目的性能,又不会影响项目的关联关系使用

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥40 复杂的限制性的商函数处理
    • ¥15 程序不包含适用于入口点的静态Main方法
    • ¥15 素材场景中光线烘焙后灯光失效
    • ¥15 请教一下各位,为什么我这个没有实现模拟点击
    • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
    • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
    • ¥20 有关区间dp的问题求解
    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码