import org.apache.commons.dbcp.BasicDataSource;
/**
-
封装数据库连接类
-
@author Administrator
*/
public class DBConnection {
private static final String NAME=“root”;//定义一个name常量将数据库用户名作为字符串初值赋值
private static final String PASSWORD=“root”;//定义一个psw常量将数据库密码作为字符串初值赋值
private static final String URL=“jdbc:mysql://localhost:3306/his”;//定义一个URL常量将连接数据库字符串作为字符串初值赋值可以myeclipse中找到
private static final String DRIVER=“com.mysql.jdbc.Driver”;//定义一个静态的driver常量将mysql数据库驱动地址作为字符串初值赋值可以myeclipse中找到
public static Connection getConn(){
BasicDataSource bds=new BasicDataSource();
//手动方式设置
bds.setDriverClassName(DRIVER);
bds.setUrl(URL);
bds.setUsername(NAME);
bds.setPassword(PASSWORD);
//获取Data
Connection conn=null;
try { conn = bds.getConnection(); } catch (SQLException e) {
e.printStackTrace(); }
return conn; }
}
bds.setInitialSize(20);//初始创建多少个连接
bds.setMaxActive(10);//最大同时连接数
bds.setMaxIdle(10);//最大空闲数
bds.setMinIdle(5);//最小空闲数
加载properties文件 方式
ResourceBundle rb=ResourceBundle.getBundle(“mydb”);
NAME=rb.getString(“dbname”);
PASSWORD=rb.getString(“dbpassword”);
URL=rb.getString(“dburl”);
DRIVER=rb.getString(“dbdriver”);
C3P0
C3P0
C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate,Spring等。
package com.zrgk.jdbc.db;
import java.beans.PropertyVetoException;
import java.sql.Connection;
import java.sql.SQLException;
import com.mchange.v2.c3p0.ComboPooledDataSource;
/**
-
封装数据库连接类
-
@author Administrator
*/
public class DBConnection {
private static final String NAME=“root”;//定义一个name常量将数据库用户名作为字符串初值赋值
private static final String PASSWORD=“root”;//定义一个psw常量将数据库密码作为字符串初值赋值
private static final String URL=“jdbc:mysql://localhost:3306/his”;//定义一个URL常量将连接数据库字符串作为字符串初值赋值可以myeclipse中找到
private static final String DRIVER=“com.mysql.jdbc.Driver”;//定义一个静态的driver常量将mysql数据库驱动地址作为字符串初值赋值可以myeclipse中找到
public static Connection getConn(){
//手动方式设置
try {
cpds.setDriverClass(DRIVER);
cpds.setJdbcUrl(URL);
cpds.setUser(NAME);
cpds.setPassword(PASSWORD);
} catch (PropertyVetoException e1) {e1.printStackTrace();}
Connection conn=null;
try { conn = cpds.getConnection(); } catch (SQLException e) {
e.printStackTrace(); }
return conn; }
}
加载文件方式(c3p0支持加载 properties 也支持加载 xml文件)
root
root
com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/his
10
30
100
10
root
root
com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/his
10
30
100
10
private static ComboPooledDataSource cpds = new ComboPooledDataSource(“myApp”);
JNDI: (Java Naming and Directory Interface)