溫馨提示×

mysql怎么使用連接池

小新
129
2021-03-22 09:47:19
欄目: 云計算

mysql怎么使用連接池

mysql使用連接池的示例:

1.手動配置連接池。

/**

     * 手動設(shè)置連接池

     */

    public void demo1(){

        // 獲得連接:

        Connection conn = null;

        PreparedStatement pstmt = null;

        ResultSet rs = null;

        try{

            // 創(chuàng)建連接池:

            ComboPooledDataSource dataSource = new ComboPooledDataSource();

            // 設(shè)置連接池的參數(shù):

            dataSource.setDriverClass("com.mysql.jdbc.Driver");

            dataSource.setJdbcUrl("jdbc:mysql:///jdbctest");

            dataSource.setUser("root");

            dataSource.setPassword("abc");

            dataSource.setMaxPoolSize(20);

            dataSource.setInitialPoolSize(3);

            

            // 獲得連接:

            conn = dataSource.getConnection();

            // 編寫Sql:

            String sql = "select * from user";

            // 預(yù)編譯SQL:

            pstmt = conn.prepareStatement(sql);

            // 設(shè)置參數(shù)

            // 執(zhí)行SQL:

            rs = pstmt.executeQuery();

            while(rs.next()){

                System.out.println(rs.getInt("uid")+"   "+rs.getString("username")+"   "+rs.getString("password")+"   "+rs.getString("name"));

            }

        }catch(Exception e){

            e.printStackTrace();

        }finally{

            JDBCUtils.release(rs, pstmt, conn);

        }

    }

2.使用配置文件配置連接池,配置文件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:///jdbctest</property>

    <property name="user">root</property>

    <property name="password">abc</property>

    <property name="initialPoolSize">5</property>

    <property name="maxPoolSize">20</property>

  </default-config>

  

</c3p0-config>

3.使用配置文件。

/**

     * 使用配置文件的方式

     */

    public void demo2(){

        Connection conn = null;

        PreparedStatement pstmt = null;

        ResultSet rs = null;

        try{

            /*// 獲得連接:

            ComboPooledDataSource dataSource = new ComboPooledDataSource();*/

            // 獲得連接:

            // conn = dataSource.getConnection();

            conn = JDBCUtils2.getConnection();

            // 編寫Sql:

            String sql = "select * from user";

            // 預(yù)編譯SQL:

            pstmt = conn.prepareStatement(sql);

            // 設(shè)置參數(shù)

            // 執(zhí)行SQL:

            rs = pstmt.executeQuery();

            while(rs.next()){

                System.out.println(rs.getInt("uid")+"   "+rs.getString("username")+"   "+rs.getString("password")+"   "+rs.getString("name"));

            }

        }catch(Exception e){

            e.printStackTrace();

        }finally{

            JDBCUtils2.release(rs, pstmt, conn);

        }

    }


0