微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Can't start a cloned connection while in manual transaction mode.解决方法

 

在进行HQL查询是出现的错误

使用iterate进行查询代码如下,报出

Can't start a cloned connection while in manual transaction mode.

错误

  1.             Iterator iter = session.createquery("from Student").iterate();
  2.             while(iter.hasNext()) {
  3.                 Student student = (Student)iter.next();
  4.                 System.out.println(student.getName());
  5.             }

但是使用,如下代码进行查询,却没有报错,

 

  1.             List students = session.createquery("from Student").list();
  2.             for (Iterator iter=students.iterator(); iter.hasNext();) {
  3.                 Student student = (Student)iter.next();
  4.                 System.out.println(student.getName());
  5.             }
  6.             System.out.println("---------------------------------------------");
  7.             Iterator iter = session.createquery("from Student").iterate();
  8.             while(iter.hasNext()) {
  9.                 Student student = (Student)iter.next();
  10.                 System.out.println(student.getName());
  11.             }

找了相关资料,最后解决了问题,修改连接数据库的URL为

jdbc:microsoft:sqlserver://localhost:1433;DataBaseName=Hibernate_HQL;SelectMethod=cursor

在URL后加入红色标注代码

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐