| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付买域名,送MP3、MP4
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY买空间,免费送域名(厦门中资源)
共有 345 人关注过本帖
标题:关于数据库链接的创建
收藏  订阅  推荐  打印 
似水娇阳
Rank: 1
等级:新手上路
帖子:2
积分:120
注册:2008-9-17
关于数据库链接的创建

数据库链接一般如何获得,他的生命周期,最好如何控制,是每次执行完数据库操作就关闭还是跟着用户的SESSION跑!session创建就获的一个链接session失效然后关闭数据库链接。如何控制比较高效。大家谈谈
搜索更多相关主题的帖子: 数据库  链接  
2008-9-17 20:23
似水娇阳
Rank: 1
等级:新手上路
帖子:2
积分:120
注册:2008-9-17

还有就是大家如何都用同一个链接对象好不好,这样会不会产生并发或死锁的问题啊!
2008-9-17 20:25
zhong0711101
Rank: 2
等级:注册会员
帖子:88
积分:940
注册:2008-7-15

我也想知道啊
2008-11-3 17:07
wyq03
Rank: 2
等级:注册会员
威望:1
帖子:42
积分:526
注册:2005-9-14

只是根据自己平常做项目的习惯和理解进行叙述,不一定准确,希望可以跟大家以前讨论.
session 一般用来做权限控制(传参压对象等).
默认的session 时间应该是是20分钟.可以在web.xml进行设置
方法:
<session-config>
    <session-timeout>15</session-timeout>
</session-config>
或在action 或servlet 中
方法:
session.setMaxInactiveInterval(XXX)
进行设置.

如果使用session(继承hibernate中持久化连接)用做数据连接控制的话.
一般使用方式为(我自己的习惯):
做查询时(单sql语句):
写一个单独的查询类:
public querylist(Stirng sql)
查询前获取session
返回结构后关闭session

做插入修改删除操作时:
写一个单独的操作类:
public executeSql(List<String> sql)//进行批量操作,如果失败可进行事物回滚.
{
  操作前获取session
   使用session的事物处理
   批量进行sql语句压入
   
   事物提交.
   session关闭.

}

虽然java用自带的session回收机制,不过作为一个合格的开发人员,我个人认为,还是应该控制好方法内的session.
另外数据库连接池(不管是hib还是iba)应该是做连接限制的(避免重复创建con而不关闭的情况而con的获得是从session获取).

别拿无知当个性!
2008-11-4 10:06
鼻涕虫
Rank: 2
等级:注册会员
威望:1
帖子:34
积分:512
注册:2008-5-4

如果这样就加锁吧,虽然实现上比较复杂点,一般操作最多的是查询语句,所以加锁从很所方面来说是一种浪费,而且不能保证不出错,哎,这是一个数据库难题啊
2008-11-21 23:11
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.053105 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved