mysql jdbc链接配置文件_Java JDBC使用配置文件连接数据库

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 < 10; 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"));

}

}

}

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值