网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > J2EE/J2ME
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.增加KVM中的系统调用API.
.J2ME联网中采用序列化机制.
.JDO2.0的查询语言新特性.
.跟我学制作Pak文件.
.使用EasyMock使单元测试更加容易.
.Servlet中jdbc应用高级篇之六.
.cleverpig分享用MIDP实现贪吃蛇游.
.如何给Log4j配上数据库连接池.
.Infomation Module Profile介绍.
.用j2ee实现的一个简单的会话bean.
.创建简单Eclipse插件实现AxisWeb.
.基于weblogic的ejb学习笔记二.
.Blob和Clob在JDBC中的简介.
.使用Timer和TimerTask实现欢迎界.
.解决日期选择问题,一劳永逸(使.
.实例说明锚点位置的定义.
.将JBoss EJB应用程序迁移到WebLo.
.RMS从入门到精通之一.
.J2ME中使用 Canvas 制作简单的游.
.保护自己的MIDlet程序之三:SNPr.

Servlet中jdbc应用高级篇之五

发表日期:2007-12-23



  二、得到和返回连接

  DBConnectionManager提供getConnection()方法和freeConnection方法,这些方法有客户程序使用。所有的方法以连接池名字所参数,并调用特定的连接池对象。

public Connection getConnection(String name) {

DBConnectionPool pool = (DBConnectionPool) pools.get(name);

if (pool != null) {

return pool.getConnection();

}

return null;

}

public Connection getConnection(String name, long time) {

DBConnectionPool pool = (DBConnectionPool) pools.get(name);

if (pool != null) {

return pool.getConnection(time);

}

return null;

}

public void freeConnection(String name, Connection con) {

DBConnectionPool pool = (DBConnectionPool) pools.get(name);

if (pool != null) {

pool.freeConnection(con);

}

}

  三、关闭

  最后,由一个release()方法,用来完好地关闭连接池。每个DBConnectionManager客户必须调用getInstance()方法引用。有一个计数器跟踪客户的数量。方法release()在客户关闭时调用,技术器减1。当最后一个客户释放,DBConnectionManager关闭所有的连接池。

List 11-14

public synchronized void release() {

// Wait until called by the last client

if (--clients != 0) {

return;

}

Enumeration allPools = pools.elements();

while (allPools.hasMoreElements()) {

DBConnectionPool pool = (DBConnectionPool) allPools.nextElement();

pool.release();

}

Enumeration allDrivers = drivers.elements();

while (allDrivers.hasMoreElements()) {

Driver driver = (Driver) allDrivers.nextElement();

try {

DriverManager.deregisterDriver(driver);

log("Deregistered JDBC driver " + driver.getClass().getName());

}

catch (SQLException e) {

log(e, "Can not deregister JDBC driver: " +

driver.getClass().getName());

}

}

}

当所有连接池关闭,所有jdbc驱动程序也被注销进入讨论组讨论。

(出处:)


上一篇:Servlet中jdbc应用高级篇之六 人气:756
下一篇:Weblogic6.0中Servlet的注册方法 人气:514
浏览全部J2EE/J2ME的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐