hibernate 生成sql问题。

liuchao1989 2011-06-15 02:21:17
一条hql语句生成很多条一样的sql语句。下面是一个例子:
String hql = "from users u where u.name=?";
我在控制台观察它生成了 很多 select 列名1,列名2,列名n,列名等等。。。 from users u where u.name =? ;

它生成很多sql语句,导致我连接数据库的连接数满了,报连接数满了的错误。
...全文
105 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Fly_m 2011-06-15
  • 打赏
  • 举报
回复
你控制台是不是将resultset用了log4j打印出来,这样就会打印很多sql语句了。但打印很多与数据库连接满没关系,肯定是其它地方出问题了。
xdrs1314 2011-06-15
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 gongdath 的回复:]

同意楼上,hibernate的控制台中显示多条sql,不一定是生成了多条sql。
[/Quote]+1
zhou961270 2011-06-15
  • 打赏
  • 举报
回复
hibernate是这种结果,N+1
淫生杯具 2011-06-15
  • 打赏
  • 举报
回复
楼主能把代码以及数据源配置之类的贴出来么?
gongdath 2011-06-15
  • 打赏
  • 举报
回复
同意楼上,hibernate的控制台中显示多条sql,不一定是生成了多条sql。
dragonsky_w 2011-06-15
  • 打赏
  • 举报
回复
在hibernate中一条hql语句只会生成一个连接,不会生出很多的sql语句,只是你想要将sql语句在控制台打印出来的时候才会显示多条,但这与连接无关,你检查一下你的连接池是否配置成功,并检测一下你一条hql语句会生成几个连接及指导问题所在了……
LastJune 2011-06-15
  • 打赏
  • 举报
回复
是不是写在循环里了?
hibernate不会发生这种问题
liuchao1989 2011-06-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 caolong0210 的回复:]
楼主这条sql语句表明后的别名u有点多余了,直接写from users where name=? 就行了


楼主把错误和生成的sql语句抓个图 发来看看吧
[/Quote]我这是写的一个例子,没有错误,就是一条hql语句在控制台生成很多sql语句。
哎呦喂哈 2011-06-15
  • 打赏
  • 举报
回复
楼主这条sql语句表明后的别名u有点多余了,直接写from users where name=? 就行了


楼主把错误和生成的sql语句抓个图 发来看看吧

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧