此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【c54104】截止到2008-06-28 22:08:06的历史汇总数据(不包括此帖):
发帖数:0                  发帖分:0                  
结贴数:0                  结贴分:0                  
未结数:0                  未结分:0                  
结贴率:-------------------结分率:-------------------
如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html

解决方案 »

  1.   

    如果lazy为true的时候,当你在session之外获取关联数据的时候,会出现session close错误
    解决方法1 配置openSessionView来解决这个问题,网上有很多配置的例子,非常简单,就在web.xml中加个filter,不过这里可能会影响性能,因为session不关闭的话,可能数据库的连接就一直不会关闭2 配置lazy为false,这样会影响性能,因为所有的查询这里都会把关联查询出来3 在需要的时候不通过get获取数据,而是用 left join fetch collection  来关联抓取,也就是说改变这个业务的查询方式为fetch抓取方式
      

  2.   

    可是如果存在多对一关系
    在一对多方设fetch=true会得到包含多个同样的元素的list啊
      

  3.   

    如果用fetch的话,那你选择的是 left outer join 在数据库里面去的时候也是根据子表的个数来显示这是正常的呀,sql也是这样的,你可以在查询里加distinct 来避免
      

  4.   

    没有用inView的方式.web.xml加filter.我spring配置也要改.
    lazy=false的确可以.但影响性能.
    我来试试第三种..