生活随笔
收集整理的這篇文章主要介紹了
使用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://localhost:3306/dbcp</property> ????????<property name="user">root</property> ????????<property name="password">123456</property>
????????<property name="acquireIncrement">5</property> ????????<property name="initialPoolSize">10</property> ????????<property name="minPoolSize">5</property> ????????<property name="maxPoolSize">20</property> ????</default-config>
</c3p0-config> ? |
?
?
C3p0Util
| import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import com.mchange.v2.c3p0.ComboPooledDataSource;
public class C3p0Util {
????private static ComboPooledDataSource ds = null; ????//在靜態代碼塊中創建數據庫連接池 ????static{ ????????try{ ????????????ds = new ComboPooledDataSource("c3p0-config");//使用C3P0的命名配置來創建數據源
????????}catch (Exception e) { ????????????throw new ExceptionInInitializerError(e); ????????} ????}
????public static Connection getConnection() throws SQLException{ ????????//從數據源中獲取數據庫連接 ????????return ds.getConnection(); ????}
????public static void close(Connection conn,Statement st,ResultSet rs){ ????????if(rs!=null){ ????????????try{ ????????????????rs.close(); ????????????}catch (Exception e) { ????????????????e.printStackTrace(); ????????????} ????????} ????????if(st!=null){ ????????????try{ ????????????????st.close(); ????????????}catch (Exception e) { ????????????????e.printStackTrace(); ????????????} ????????}
????????if(conn!=null){ ????????????try{ ????????????????conn.close(); ????????????}catch (Exception e) { ????????????????e.printStackTrace(); ????????????} ????????} ????} } ? |
TestC3p0Util
| import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import com.mchange.v2.c3p0.ComboPooledDataSource;
public class C3p0Util {
????private static ComboPooledDataSource ds = null; ????//在靜態代碼塊中創建數據庫連接池 ????static{ ????????try{ ????????????ds = new ComboPooledDataSource("c3p0-config");//使用C3P0的命名配置來創建數據源
????????}catch (Exception e) { ????????????throw new ExceptionInInitializerError(e); ????????} ????}
????public static Connection getConnection() throws SQLException{ ????????//從數據源中獲取數據庫連接 ????????return ds.getConnection(); ????}
????public static void close(Connection conn,Statement st,ResultSet rs){ ????????if(rs!=null){ ????????????try{ ????????????????rs.close(); ????????????}catch (Exception e) { ????????????????e.printStackTrace(); ????????????} ????????} ????????if(st!=null){ ????????????try{ ????????????????st.close(); ????????????}catch (Exception e) { ????????????????e.printStackTrace(); ????????????} ????????}
????????if(conn!=null){ ????????????try{ ????????????????conn.close(); ????????????}catch (Exception e) { ????????????????e.printStackTrace(); ????????????} ????????} ????} } ? |
?
?
總結
以上是生活随笔為你收集整理的使用c3p0连接池的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。