您的位置:首页 > 数据库 > MySQL

通过DBUtils和C3P0结合简单实现增删改功能简化使用JDBC

2018-03-03 09:41 633 查看
DBUtils的作用:
      DBUtils是Apache旗下的开源组件,对于JDBC来说,通过DBUtils能够简化堆JDBC的操作,因为DBUtils封装了对JDBC的操作。

DBUtils所包含的主要类:
   1.QueryRunner类:主要为了对数据库进行操作。
     2.ResultSetHandler接口:对select的返回后,怎么封装到结果集。
     3.DbUtils类:用于关闭资源与事务处理。
C3P0的介绍: 1.
C3P0开源免费的连接池!使用它的开源项目有Spring、Hibernate等    2.C3P0使用时需要添加配置文件c3p0-config.xml和jar包。

注意:在使用时,配置文件的名字必须是c3p0-config.xml。

c3p0-config.xml文件源码:

  <?xml version="1.0" encoding="UTF-8"?>
   <c3p0-config>

  <default-config>
    <property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql:///web08</property>
<property name="user">tiantian</property>
<property name="password">123456</property>
<property name="initialPoolSize">5</property>
<property name="maxPoolSize">20</property>
  </default-config>
  
  <named-config name="atlihao"> 
    <property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql:///web08</property>
<property name="user">root</property>
<property name="password">123456</property>
<property name="initialPoolSize">5</property>

<property name="maxPoolSize">20</property>
   </named-config>
 </c3p0-config>

C3P0Utils类的实现源码(仅为测试类提供DataSource对象):

public class C3P0Utils {
//注意:1.使用无参构造器创建对象,就选择c3p0-config.xml中的<default-config>标签中的数据
//2.使用有参构造器创建对象(例如:ComboPooledDataSource("atlihao")),就选择c3p0-config.xml中的 <named-config name="atlihao">标签中的数据
//private static ComboPooledDataSource dataSource=new ComboPooledDataSource();
private static ComboPooledDataSource dataSource=new ComboPooledDataSource("atlihao");
public static DataSource getDataSource() {
return dataSource;
}
public static Connection getConnection() {
try {
return dataSource.getConnection();
} catch (SQLException e) {
            throw new RuntimeException(e);
}
}
}

TestDBUtils类的源码(测试DBUtils工具类):

/**
 * 测试DBUtils工具类
 * @author q'q
 *
 */
public class TestDBUtils {
/**
* 测试删除用户方法
*/
@Test
public void testDeleteUser() {
try {
//1.创建核心类QueryRunner
QueryRunner qr=new QueryRunner(C3P0Utils.getDataSource());
//2.编写sql语句
String sql="delete from tbl_user where uid=?";
//3.为占位符设置值
Object[] params= {9};
//4.执行添加操作
int rows=qr.update(sql,params);
if(rows>0) {
System.out.println("删除成功!");
}else {
System.out.println("删除失败!");
}
} catch (SQLException e) {
            throw new RuntimeException(e);
}
}


这是本人第一次书写属于自己的博客,希望各位多多提建议,我会努力的去改变自己的书写分格,去分享自己学到的东西,编程,需要最多的就是耐心,加油。


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql DBUtils JDBC C3P0
相关文章推荐