数据源和数据库链接池

  Java中的数据源就是javax.sql.DataSource。DataSource的建立能够有不一样的实现。DataSource 一般被称为数据源,它包含链接池和链接池管理两个部分,习惯上也常常把 DataSource 称为链接池。java

 

  JNDI方式建立DataSource:  (Java Naming and Directory Interface,Java命名和目录接口)。首先要配置数据源的相关链接信息,也就是数据源链接池。该配置应该在Tomcat安装目录下的conf/context.xml文件中配置。mysql

  

 

链接池基本的思想,原理:sql

  在系统初始化的时候,将数据库链接做为对象存储在内存中,当用户须要访问数据库时,并不是创建一个新的链接,而是从链接池中取出一个已创建的空闲链接对象。数据库

数据库链接池负责分配,管理和释放数据库链接,它容许应用程序重复使用一个现有的数据库链接,而不是从新创建一个。网站

链接池通俗理解:  ui

  数据库链接池就是准备一个池子,里面放着不少生成好的Connection,用户请求得到链接,就不须要getConnection,只要从池子里拿一个给他就好了,这样省掉了生成Connection的时间,效率上会有很大提升,不过固然会占用一些内存~稍微大点网站都会用到数据库链接池的~spa

 

数据库链接池技术的优势: xml

资源重用对象

更快的系统反应速度blog

新的资源分配手段

统一的链接管理,避免数据库链接泄露

 

开源的数据库链接池 C3P0 DBCP Proxool XAPool 等

  以C3p0得到数据源为例:

 @Test public void testC3P0() throws Exception{
        ComboPooledDataSource cpds = new ComboPooledDataSource();
        cpds.setDriverClass( "com.mysql.jdbc.Driver" ); //loads the jdbc driver            
        cpds.setJdbcUrl( "jdbc:mysql:///atguigu" );
        cpds.setUser("root");                                  
        cpds.setPassword("1230");   
        
        System.out.println(cpds.getConnection()); 
    }
相关文章
相关标签/搜索