当前位置: 移动技术网 > IT编程>开发语言>Java > jdbc结合dpcp连接池的封装实例

jdbc结合dpcp连接池的封装实例

2019年07月19日  | 移动技术网IT编程  | 我要评论

demo需求:

实现jdbc结合dpcp连接池的封装(以oracle数据库为例)并实现简单地查找demo主要技术:
(1)properties类加载.properties的方式

(2)dpcp连接池建立数据库连接的方式

(3)查询数据的方式

(4)静态代码块的使用,分离驱动的加载和连接信息的载入,整个服务器生命周期只执行一次

demo所用jar包:

classes12.jar
commons-dbcp-1.4.jar
commons-pool-1.5.4.jar

demo主要代码展示:

utils.java
 private static connection conn = null;
 private static basicdatasource datasource = new basicdatasource();
 private static properties prop = getproperties("src/db.properties");

 // 将连接池的创建放在静态代码块,保证整个服务器生命周期只执行一次,减少服务器负担
 static {
  try {
   datasource.setdriverclassname(prop.getproperty("driver"));
   datasource.seturl(prop.getproperty("url"));
   datasource.setusername(prop.getproperty("user"));
   datasource.setpassword(prop.getproperty("password"));
   datasource.setmaxactive(20);
   datasource.setinitialsize(10);
  } catch (exception e) {
   system.out.println("连接池创建失败");
  }
 }

 /**
  * show 方法简介 获取数据库连接池的连接,因为已经封装,以后只需要配置db.properties,无需动这边代码
  * 
  * @author 叶灬黎
  * @return
  */
 public static connection getconnection() {
  try {
   conn = datasource.getconnection();
  } catch (exception e) {
   system.out.println("数据库连接失败");
  }
  return conn;
 }

 /**
  * show 方法简介 读取.properties文件,这里主要服务于想将jdbc连接数据库的各项参数抽取出来
  * 
  * @author 叶灬黎
  * @param file
  *   要读取的.properties文件的路径
  * @return properties类对象
  */
 private static properties getproperties(string file) {
  properties properties = new properties();
  try {
   fileinputstream fis = new fileinputstream(new file(file));
   properties.load(fis);
   fis.close();
  } catch (ioexception e) {
   system.out.println("加载配置文件出错");
  }
  return properties;
 }
oneselect.java
 public static void main(string[] args) {
  list<string> names = new arraylist<>();
  
  try {
   connection conn = utils.getconnection();
   //创建执行引擎
   statement state = conn.createstatement();
   //执行sql
   string sql = "select * from emp";
   resultset rs = state.executequery(sql);
   while(rs.next()){
    names.add(rs.getstring("ename"));
   }
   rs.close();
   state.close();
   conn.close();
  } catch (sqlexception e) {
   // todo auto-generated catch block
   e.printstacktrace();
  }
  
  for(string s : names){
   system.out.println(s);
  }
 }
db.properties(src目录下)
  driver = oracle.jdbc.driver.oracledriver
  url = jdbc:oracle:thin:@127.0.0.1:1521:orcl
  user = scott
  password = 123456

demo资源位置:

svn://106.15.229.200/javaweb/tinydemo_jdbc 用户temp/密码temp)

以上这篇jdbc结合dpcp连接池的封装实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网