通过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);
}
}
这是本人第一次书写属于自己的博客,希望各位多多提建议,我会努力的去改变自己的书写分格,去分享自己学到的东西,编程,需要最多的就是耐心,加油。
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);
}
}
这是本人第一次书写属于自己的博客,希望各位多多提建议,我会努力的去改变自己的书写分格,去分享自己学到的东西,编程,需要最多的就是耐心,加油。
相关文章推荐
- ASP.NET jQuery 实例11 通过使用jQuery validation插件简单实现用户登录页面验证功能
- ASP.NET jQuery 实例11 通过使用jQuery validation插件简单实现用户登录页面验证功能
- 通过Socket实现简单web服务器功能(接收页面请求信息)不使用Tomcat!
- jdbc使用prepareStatement实现简单的转账功能
- jdbc简单的连接和实现基本的增删改更功能
- Eclipse使用(七)—— 使用Eclipse创建JavaWeb项目并使用JDBC连接数据库实现简单的登陆注册功能
- ASP.NET jQuery 食谱11 (通过使用jQuery validation插件简单实现用户登录页面验证功能)
- ASP.NET jQuery 实例12 通过使用jQuery validation插件简单实现用户注册页面验证功能
- ASP.NET jQuery 食谱12 (通过使用jQuery validation插件简单实现用户注册页面验证功能)
- ASP.NET jQuery 实例12 通过使用jQuery validation插件简单实现用户注册页面验证功能
- 【asp.net 】使用js结合hidden控件实现在后台运行一段程序后提示确认,确认通过后继续执行后台代码~~~
- 使用compass+lucene实现简单的全文检索功能
- 使用FLEX实现简单WEB在线拍照功能
- JDBC 查询日志变得简单 使用增强型PreparedStatement向JDBC代码增加日志功能
- 一个使用监听器模式实现的J2ME网络编程框架,包括一个简单的登录功能实现(含源代码)
- XML与ASP简单结合实现HTML模板功能
- 使用 Raphael js 和JSON 来实现具备保存功能的简单的仿QQ秀
- jsData 使用教程(三) 实现增删改功能
- 使用.htaccess实现简单的防盗链功能
- Eclipse3.1.1+Webloigc 9.0通过数据源实现JDBC简单事务处理