连接数据库的两种方式:
在Java应用程序中,数据库的连接一般有两种方式来得到。一种是通过java.sql.DriverManager的方式来得到数据库连接。这种方式不依赖于应用服务的支持,但是也不提供数据库连接池的功能。另外一种方式是通过javax.sql.DataSource的方式来得到数据库连接。在传统基于J2EE的应用需要通过JNDI来得到数据源(javax.sql.DataSource)对象,然后再通过数据源来得到相应的数据库连接。常见的应用服务器都支持这种方式,且一般都提供了数据库连接池的支持。如果不打算用应用服务器来管理你的数据库连接池,可以使用第三方的连接池管理工具如C3p0
一)jdbc直接连接,如下所示:
Class.forName("com.ibm.db2.jcc.DB2Driver").newInstance();
String user = "db2admin";
String password = "db2kingdom";
String url = "jdbc:db2://192.168.47.1:50000/TESTDB2";
conn = DriverManager.getConnection(url,user,password);
return conn;
二)使用数据源
DataSource ds = null;
try {
Context ctx = new javax.naming.InitialContext();
ds = (javax.sql.DataSource) (DataSource) ctx.lookup("jdbc/ccsb");
} catch (NamingException e) {
System.out.println("===初始化数据源失败!指定的JNDI不存在:jdbc/ccsb);
} catch (Exception e) {
e.printStackTrace();
}
return ds;
数据源的管理
一) 交由应用服务器来管理,然后在应用服务器的JNDI对象中通过lookup()方法来查找取得数据源.
在tomcat中配置server.xml文件:
auth="Container"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.0.8:1521:ora9i"
username="ccsb"
password="ccsb"
maxActive="20"
maxIdle="10"
maxWait="-1"/>
通过在中注册一个资源Resource,这时,该数据源就已经交由应用服务器来管理了.该应用启动的时候,该资源就会被实例话并在应用服务器JNDI对象中保存该实例的一个句柄“jdbc/ccsb”,当要使用该数据源的时候,可以通过lookup这个句柄来取得该对象,并将其强制转型.
二) 交由第三方的数据源管理组件
如C3p0组件等,此时无法通过索引应用服务器的JNDI树来获得该数据源,因为JNDI是应用服务器相关的.
数据库连接池
当使用数据源来操作数据库时,可以配置使用数据库连接池,来提高访问数据库的效率,对于连接池的管理也分为两种:1)应用服务器管理 2)第三方数据源管理组件来管理
相关推荐
在较为完备的数据库连接池实现中,可根据预先的连接占用超时设定,强制收回被占用连接。从而避免了常规数据库连接操作中可能出现的资源泄漏 。 由于数据库连接得到重用,避免了频繁创建、释放连接引起的大量性能...
c#语言下,使用netcore2.1框架,调用netstandard数据库连接池组件
基于tp5的swoole支持,对th5的connection进行改造,使用Swoole\Coroutine\MySQL重写了基于swoole的PDO接口,实现了mysql的数据库连接池,本地测试可用。使用时,替换thinkphp/library/think/db/Connection.php,并...
数据库连接池 数据库连接池 数据库连接池 数据库连接池
JAVA 完整的数据库连接池实现 可以配置根据自己需要
C#高效数据库连接池源码
数据库连接池代码实现
JAVA 使用数据库连接池连接Oracle数据库,全代码,附加详细说明
此类非常简单,免去了网上众多资料里所说的麻烦的tomcat配置,更强...不仅oracle,mysql,sqlserver2000都行,因为它依据的是你自己连接数据库的驱动。当然首先你要保证你拥有一个能连接自己数据库的对应驱动类。如下面以
durid数据库连接池的使用方式,定义了工具类,可以通过durid方式访问数据库,实现对数据库的添加
数据库连接池的基础学习,针对mysql数据库的数据库连接池在java中的具体实现及应用配置
并在学习掌握了实现连接池的关键技术后给出了一个较为高效的连接池管理策略,在这种策略思想的指导下实际开发出一个数据库连接池模块,使得上层应用通过本连接池访问数据库资源变得相对高效和容易,从实际上论证了...
这个数据库连接池的实现,包含了源代码,从配置文件读取驱动等相关信息支持Oracle和sql server等多种数据库,里面有写好的测试类
数据库连接池的详细开发代码,很方便应用,适合不熟悉数据库连接池的人应用。
在Java语言中,JDBC(Java DataBase Connection)是应用程序与数据库沟通的桥梁
用java实现的简易的数据库连接池及其管理 课程设计 编写一关于Microsoft Access数据库连接池及其管理的相关类,要求能从XML配置文件中读取该数据库驱动程序,数据库名,连接池最大连接数,最多等待用户数,查询...
一个Demo小例子让你了解数据库连接池实现的4种方式
使用JAVA中的动态代理实现数据库连接池
基于Java的数据库连接池的研究与实现,谢俊,陈明,介绍了基于Java的数据库的访问机制,对实际应用中出现的问题进行了分析,提出了数据库连接池技术的解决方案,分析了连接池的工作原理,�
DBCP配置数据库连接池实现对数据库的连接并附上增删改查