讨论一下,大家在一个.jsp里,如果要查询数据库5次,大家是取5次连接,再5次释放,还是一次连接,最后一次释放??

coffeemilk 2005-02-21 02:58:27
讨论一下,大家在一个页面里,如果要查询数据库5次,大家是取5次连接,再5次释放,还是一次连接,最后一次释放??

大家是如何做的?
请发言!


...全文
554 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
coffeemilk 2005-02-23
  • 打赏
  • 举报
回复
to : zhangqunjun() :
都是放在bean里面的啊,这样写,只是为了让大家看清楚
OfThOfTh 2005-02-22
  • 打赏
  • 举报
回复
mark
shan1119 2005-02-22
  • 打赏
  • 举报
回复
一次连接,使用多次,一次释放。
zhangqunjun 2005-02-22
  • 打赏
  • 举报
回复
建议不要把数据库联接的代码放在jsp文件里面!!
放到bean里面不行吗???效率高多了!!
wwwzhigang 2005-02-22
  • 打赏
  • 举报
回复
建一连接池试试
jerrykey 2005-02-22
  • 打赏
  • 举报
回复
一次连接,使用多次,一次释放。
zhugang 2005-02-22
  • 打赏
  • 举报
回复
连接池
yibu_zeng 2005-02-22
  • 打赏
  • 举报
回复
最好是使用连接池,没有这样的容器,就自已建几个连接缓存起来,最后释放.
geelpheels 2005-02-22
  • 打赏
  • 举报
回复
AB是什么意思搞不懂。up
stonequake 2005-02-22
  • 打赏
  • 举报
回复
使用数据连接池吧
edsonwen 2005-02-21
  • 打赏
  • 举报
回复
还是搞个连接池好!
yeyu710 2005-02-21
  • 打赏
  • 举报
回复
数据库连接系统开销很大。

一次连接,多次使用,一次释放。
coffeemilk 2005-02-21
  • 打赏
  • 举报
回复
明天继续关注啊。。。。。。。一定要出答案
coffeemilk 2005-02-21
  • 打赏
  • 举报
回复
to enjoy330(*寒林*) :
但是错就错在这个逻辑,我试了每次用完之后关闭rs
但因为在并发的时候,可能把连接给释放掉了。会出错。




因为在A电脑上打开 Test.jsp的时候,并且Test.jsp取得连接在没释放之前。
这个时候在B电脑上再打开Test.jsp。因为连接还没释放,所以就执行到了Test.jsp
中一段代码
statement = getConnection().createStatement();
ResultSet resultset = statement.executeQuery(s);
//B电脑上这个页面,因为A电脑页面上同一个连接没释放,所以没错。
但可能这个时候,A电脑运行的这个页面已经运行到最后,把这个连接
释放掉了
接下来的ResultSet就出错了??????
大家如何办啊?
enjoy330 2005-02-21
  • 打赏
  • 举报
回复
rs啊,stmt啊每次用完后都关掉!只留con在最后关掉。估计不会socket error.
coffeemilk 2005-02-21
  • 打赏
  • 举报
回复
to gaochao79() (:
以前我也是用你这种。封装在类中,没错。
后来我想在一个页面里开始取连接,然后结束的时候再关闭。

但出错了。

因为在A电脑上打开 Test.jsp的时候,并且Test.jsp取得连接在没释放之前。
这个时候在B电脑上再打开Test.jsp。因为连接还没释放,所以就执行到了Test.jsp
中一段代码
statement = getConnection().createStatement();
ResultSet resultset = statement.executeQuery(s);
//B电脑上这个页面,因为A电脑页面上同一个连接没释放,所以没错。
但可能这个时候,A电脑运行的这个页面已经运行到最后,把这个连接
释放掉了
接下来的ResultSet就出错了??????
大家如何办啊?

gaochao79 2005-02-21
  • 打赏
  • 举报
回复
呵呵 是啊不过关系不大 大部分网页都发布成html的
不过以后还是会把bean改写一下
coffeemilk 2005-02-21
  • 打赏
  • 举报
回复
回复人: gaochao79()
你也只是用到数据库就连接再关闭。太耗系统资源了

gaochao79 2005-02-21
  • 打赏
  • 举报
回复
我的办法比较笨 写在bean里面 每次查询只得到一个结果数组 连接和关闭连接全在类里了
vvpang 2005-02-21
  • 打赏
  • 举报
回复
关于数据库的操作一定要少连接,一次连接要尽可能多坐事情。
关于事务处理,是当一次连接数据库要出现多次modify操作的时候所必须的,如果仅仅是select则不需要事务。
加载更多回复(13)

81,094

社区成员

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

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