DBCP数据源使用

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-07 16:01:39
オリジナル
1423 人が閲覧しました

DBCP:DataBase Connection Pool 1、需要的jar:commons-dbcp.jar commons-pool.jar 2、把DBCP的配置文件(dbcpconfig.properties)拷贝到构建路径中 3、创建类:DBCPUtil dbcpconfig.properties: mysql设置内容如下: #连接设置driverClassName=com.mysql.j

DBCP:DataBase Connection Pool
1、需要的jar:commons-dbcp.jar commons-pool.jar

2、把DBCP的配置文件(dbcpconfig.properties)拷贝到构建路径中

3、创建类:DBCPUtil

dbcpconfig.properties:

mysql设置内容如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

#连接设置

driverClassName=com.mysql.jdbc.Driver

url=jdbc:mysql://localhost:3306/day16

username=root

password=liang

 

#<!-- 初始化连接 -->

initialSize=10

 

#最大连接数量

maxActive=50

 

#<!-- 最大空闲连接 -->

maxIdle=20

 

#<!-- 最小空闲连接 -->

minIdle=5

 

#<!-- 超时等待时间以毫秒为单位 6000毫秒/1000等于60秒 -->

maxWait=60000

 

#JDBC驱动建立连接时附带的连接属性属性的格式必须为这样:[属性名=property;]

#注意:"user" "password" 两个属性会被明确地传递,因此这里不需要包含他们。

connectionProperties=useUnicode=true;characterEncoding=utf8

 

#指定由连接池所创建的连接的自动提交(auto-commit)状态。

defaultAutoCommit=true

 

#driver default 指定由连接池所创建的连接的只读(read-only)状态。

#如果没有设置该值,则&ldquo;setReadOnly&rdquo;方法将不被调用。(某些驱动并不支持只读模式,如:Informix)

defaultReadOnly=

 

#driver default 指定由连接池所创建的连接的事务级别(TransactionIsolation)。

#可用值为下列之一:(详情可见javadoc。)NONE,READ_UNCOMMITTED, READ_COMMITTED, REPEATABLE_READ, SERIALIZABLE

#oracle只支持READ_COMMITTED(默认),SERIALIZABLE

defaultTransactionIsolation=REPEATABLE_READ

ログイン後にコピー

DBCPUtil:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

package cn.itcast.util;

 

import java.io.InputStream;

import java.sql.Connection;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.Properties;

 

import javax.sql.DataSource;

 

import org.apache.commons.dbcp.BasicDataSourceFactory;

 

public class DBCPUtil {

    private static DataSource ds;

    static{

        try {

            InputStream in = DBCPUtil.class.getClassLoader().getResourceAsStream("dbcpconfig.properties");

            Properties props = new Properties();

            props.load(in);

            ds = BasicDataSourceFactory.createDataSource(props);

        } catch (Exception e) {

            e.printStackTrace();

        }

    }

    public static Connection getConnection(){

        try {

            return ds.getConnection();

        } catch (SQLException e) {

            throw new RuntimeException(e);

        }

    }

    public static void release(ResultSet rs,Statement stmt,Connection conn){

        if(rs!=null){

            try {

                rs.close();

            } catch (SQLException e) {

                e.printStackTrace();

            }

            rs = null;

        }

        if(stmt!=null){

            try {

                stmt.close();

            } catch (SQLException e) {

                e.printStackTrace();

            }

            stmt = null;

        }

        if(conn!=null){

            try {

                conn.close();

            } catch (SQLException e) {

                e.printStackTrace();

            }

            conn = null;

        }

    }

}

ログイン後にコピー
関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート