程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> [javaEE] 開源數據庫連接池,javaee數據庫連接

[javaEE] 開源數據庫連接池,javaee數據庫連接

編輯:JAVA綜合教程

[javaEE] 開源數據庫連接池,javaee數據庫連接


一些開源組織提供了數據源的獨立實現:

DBCP數據庫連接池

C3P0數據庫連接池

Apache Tomcat內置的連接池

 

DBCP連接池

apache提供的連接池實現,需要導入common-dbcp.jar commons-pool.jar

 

import java.io.FileReader;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Properties;

import javax.sql.DataSource;

import org.apache.commons.dbcp.BasicDataSourceFactory;

public class DBCPTest {
    public static void main(String[] args) throws Exception {
        //導入配置文件
        Properties prop=new Properties();
        prop.load(new FileReader("dbcp.properties"));
        //獲取數據源
        BasicDataSourceFactory factory=new BasicDataSourceFactory();
        DataSource pool=factory.createDataSource(prop);
        
        Connection conn=pool.getConnection();
        //獲取傳輸器對象
        Statement statement=conn.createStatement();
        //獲取結果集對象
        ResultSet resultSet=statement.executeQuery("select * from user");
        //遍歷
        while(resultSet.next()){
            String username=resultSet.getString("username");
            System.out.println(username);
        }
        //關閉資源
        resultSet.close();
        statement.close();
        conn.close();
        
    }
}

在項目目錄下新建dacp.properties

driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql:///java
username=root
password=root

 

C3P0連接池

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;

import com.mchange.v2.c3p0.ComboPooledDataSource;

public class DBCPTest {
    public static void main(String[] args) throws Exception {
        //使用C3P0
        ComboPooledDataSource pool=new ComboPooledDataSource();
        Connection conn=pool.getConnection();
        //獲取傳輸器對象
        Statement statement=conn.createStatement();
        //獲取結果集對象
        ResultSet resultSet=statement.executeQuery("select * from user");
        //遍歷
        while(resultSet.next()){
            String username=resultSet.getString("username");
            System.out.println(username);
        }
        //關閉資源
        resultSet.close();
        statement.close();
        conn.close();
        
    }
}

C3P0需要在類加載目錄下新建c3p0-config.xml

<?xml version="1.0" encoding="utf-8"?>
<c3p0-config>
    <default-config>
        <property name="driverClass">com.mysql.jdbc.Driver</property>
        <property name="jdbcUrl">jdbc:mysql:///java</property>
        <property name="user">root</property>
        <property name="password">root</property>
    </default-config>
</c3p0-config>

 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved