whisky1hh 2009-09-06 20:25
浏览 320
已采纳

使用DetachedCriteria的时候,如何利用Hibernate的延迟加载机制

我的项目中只要使用到DetachedCriteria(或者Criteria)就会出现延迟加载失败(No session or session closed),主要是页面调用延迟加载项的时候。相反如果是使用一般HQL去查询就不会有这个问题。我使用了Spring提供的OpenSessionViewFilter。DetachedCriteria应该不会和延迟加载不兼容吧?或者是我的配置哪里有问题?

  • 写回答

1条回答 默认 最新

  • 我不是逗B 2009-09-10 15:37
    关注

    你可以试试这样
    [code="java"]
    DetachedCriteria detachedCriteria = DetachedCriteria.forClass(XXX.class);
    Criteria criteria = detachedCriteria.getExecutableCriteria(sessionFactory.getCurrentSession());
    List results = criteria.list();
    [/code]
    关键点是session是通过[code="java"]sessionFactory.getCurrentSession()[/code]来得到的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 maixpy训练模型,模型训练好了以后,开发板通电会报错,不知道是什么问题
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容