博客详情

DBUtils+dbcp连接池的使用 (原创)

作者: 朝如青丝暮成雪
发布时间:2018-10-18 12:45:32  文章分类:java编程   阅读(1030)  评论(0)

DBUtils+dbcp连接池的使用 


1、lib中引入以下的依赖包
mysql-connector-java-5.1.40.jar
commons-dbutils-1.7.jar
commons-dbcp2-2.1.1.jar
commons-pool2-2.4.2.jar
commons-logging-1.2.jar



2、DbConfig 类

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
import javax.sql.DataSource;
import org.apache.commons.dbcp2.BasicDataSource;
public class DbConfig {
   private static  BasicDataSource basicDataSource;

   static {
   // DbUtils.loadDriver(JDBC_DRIVER);
    InputStream in =null;
    try {
    in= DbConfig.class.getClassLoader().getResourceAsStream("jdbc.properties");
    Properties prop =new Properties();
     prop.load(in);
     String  username =prop.getProperty("jdbc.username");
     String  password =prop.getProperty("jdbc.password");
     String  url =prop.getProperty("jdbc.url");
     String  driverClassName =prop.getProperty("jdbc.driverClassName");
     
      basicDataSource = new BasicDataSource();
      basicDataSource.setDriverClassName(driverClassName);
      basicDataSource.setUsername(username);
      basicDataSource.setPassword(password);
      basicDataSource.setUrl(url);
} catch (Exception e) {
   e.printStackTrace();
}finally {
if(in!=null) {
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
    
   }

   public static DataSource getDataSource() {
      return basicDataSource;
   }
}


3、jdbc.properties 
jdbc.username=root
jdbc.password=123456
jdbc.url=jdbc:mysql://localhost:3306/t31_student?useUnicode=true&characterEncoding=UTF8&useSSL=false
jdbc.driverClassName=com.mysql.jdbc.Driver


4、业务代码中引入QueryRunner 

public class StudentDao {

private  QueryRunner queryRunner=new QueryRunner(DbConfig.getDataSource());
    //...

}


5 、queryRunner中insert返回主键

       /**
* 插入数据 返回自增主键
* @param student
* @return
*/
public int save(Student student)  {
String sql ="INSERT INTO `t_student`(studentNo,`name`,sex,birthday,familyAddr,contactTel,createtime)" + 
     "VALUES(?,?,?,?,?,?,NOW())";
try {
Long id=  queryRunner.insert(sql, new ScalarHandler<Long>(), student.getStudentNo(),student.getName(),
student.getSex(),student.getBirthday(),student.getFamilyAddr(),student.getContactTel());
return  id.intValue();
} catch (SQLException e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}

 
关键字:  DBUtils  dbcp  连接池
评论信息
暂无评论
发表评论

亲,您还没有登陆,暂不能评论哦! 去 登陆 | 注册

博主信息
   
数据加载中,请稍候...
文章分类
   
数据加载中,请稍候...
阅读排行
 
数据加载中,请稍候...
评论排行
 
数据加载中,请稍候...

Copyright © 叮叮声的奶酪 版权所有
备案号:鄂ICP备17018671号-1

鄂公网安备 42011102000739号