首页 > 学院 > 开发设计 > 正文

java学习笔记—第三方数据库连接池包1(29)

2019-11-14 23:41:19
字体:
来源:转载
供稿:网友
java学习笔记—第三方数据库连接池包1(29)第一步:导入dbcp包

第二步:通过核心类连接数据

BasicDataSource它是javax.sql.DataSrouce的子类。

一个工具类:BasicDataSourceFactory。


手工通过代码连接数据库:

    BasicDataSource ds = new BasicDataSource();       //设置driver       ds.setDriverClassName("com.MySQL.jdbc.Driver");       //设置url       ds.setUrl("jdbc:mysql:///db909?characterEncoding=UTf8");       ds.setPassWord("1234");       ds.setUsername("root");       ds.setMaxActive(5) ;//设置最多有几个连接       ds.setInitialSize(2);//设置在开始时创建几个连接 手工连接,不建议这么做。

第三步:创建一个资源文件

在dbcp中一个类专门用于读取资源文件的:

BasicDataSourceFactory

#以下所有属性,都来自于BaiscDataSource的setXxxx//增加一个配置文件jdbc.PRopertiesdriverClassName=com.mysql.jdbc.Driverurl=jdbc:mysql:///db909username=rootpassword=1234maxActive=3Properties p = new Properties();        p.load(DbcpPool.class.getResourceAsStream("jdbc.properties"));        DataSource ds =                 new BasicDataSourceFactory().createDataSource(p) ;
第四步、使用连接池

在一个项目中,就只能拥有一个DataSource的实例。在这个dataqSource3中有多个Connectioin。

声明一个工厂类,创建维护唯一的一个DataSource

package cn.itcast.utils;import java.sql.Connection;import java.sql.SQLException;import java.util.Properties;import javax.sql.DataSource;import org.apache.commons.dbcp.BasicDataSourceFactory;public class DataSourceUtils {    private DataSourceUtils(){}    private static DataSource ds;     static{        try{            Properties p =                     new Properties();            p.load(DataSourceUtils.class.getClassLoader() .getResourceAsStream("jdbc.properties"));            ds =                     new BasicDataSourceFactory().createDataSource(p);         }catch(Exception e){}    }    //返回一个唯一的连接    public static Connection getCon(){         Connection con = null;        try {            con = ds.getConnection();        } catch (SQLException e) {            e.printStackTrace();        }        return con;    }    //提供一个方法返回DataSource    public static DataSource getDs(){         return ds;    }}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表