你好,游客 登录 注册 搜索
背景:
阅读新闻

Java JDBC使用配置文件连接数据库

[日期:2014-01-18] 来源:Linux社区  作者:believespecial [字体: ]

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<Connection> conns;
private Connection conn;


public JDBCFactory() throws Exception{
conns = new ArrayList<Connection>();
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"));
}
}
}

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux
相关资讯       JDBC连接数据库  Java连接数据库 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款