java jdbc使用配置文件连接数据库:
创建后缀名为:.properties的文件,,文件内容包括,数据库驱动、连接的数据库地址、用户名、密码……
以mysql为例创建config.properties配置文件其内容如下:
driver_class=com.mysql.jdbc.driver
connection_url=jdbc:mysql://localhost:3306/test
connection_username=root
connection_password=root
创建连接数据库类:
例如:
public class connectionfactory {
private static properties prop;
private static final string configname = config.properties;
private static list conns;
private connection conn;
public jdbcfactory() throws exception{
conns = new arraylist();
prop = new properties();
//加载配置文件
prop.load(this.getclass().getresourceasstream(configname));
//获取数据库驱动
class.forname(prop.getproperty(driver_class));
//创建十个数据库连接并放入list集合(conns),
//list集合(conns)相当于一个有十个数据库连接的数据库连接池
for (int i = 0; i conn = drivermanager.getconnection(
prop.getproperty(connection_url),
prop.getproperty(connection_username),
prop.getproperty(connection_password));
conns.add(conn);
}
}
//从list集合(conns)中获取数据库连接
public connection getconnection(){
return conns.remove(0);
}
//已用完的数据库连接从新添加到list集合(conns)中
public void close(connection conn){
if(conn!=null){
conns.add(conn);
}
}
}
定义测试类:
public class jdbctest {
public static void main(string[] args) throws exception {
//创建connectionfactory对象,同时创建数据库连接池
connectionfactory cf = new connectionfactory();
//获取数据库连接
connection conn = cf.getconnection();
//select sql语句
preparedstatement ps = conn.preparestatement(select * from user);
//执行sql语句
resultset rs = ps.executequery();
//循环输入查询到的内容
while(rs.next()){
//id username password 为查询数据库的字段
system.out.println(id:+rs.getint(id)+
username:+rs.getstring(username)+
password:+rs.getstring(password));
}
}
}
