解决方案 »

  1.   

    调试发现,查询的数据不是在缓存中,而是当查询B时,通过管理关系将A的数量也加了进去,就是说 如果B中有10条数据,添加了4条A数据,结果查询出来是14条数据。但是设置位延迟加载就不会出现这样的问题?
    继续等待......自己顶!
      

  2.   

    当使用Hibernate中的one-to-many、many-to one、many-to-many关系映射的时候,一个对象中会包含一个或多个Set来关联其他的对象。例如:user-groups,当程序取user 对象时,如果一个用户有多个自定义组,那么程序将把组的信息也读取出来,在log中可以看到两个sql的输出。但是在页面的显示上,也许并不需要显示这个用户相关组的信息,这样系统的消耗就白白浪费了,于是hibernate提供了lazy(延迟加载)的方法来避免这一情况的发生,这样既节省了时间,有提高了效率