传统JDBC开发(二)----抽象自己的工具类
2017-11-07 12:13
204 查看
在传统的JDBC开发中,有大量的重复代码,写起来很繁琐,所以我们考虑抽象出一个工具类,来更方便的实现JDBC的开发
首先我们要抽象出一个工具类
抽象出工具类的时候,我们要清楚哪些代码是我们在开发过程中重复写到的(比如创建和获取连接对象),于是将这些重复的代码抽象到自己的工具类中。
下面是我自己抽象出的工具类
抽象完工具类后,我们就可以开始使用自己抽象出的工具类了,具体使用如下
在dao的实现类中,我们只需要继承自己抽象出的工具类BaseDAO,就可以方便的调用自己抽象出来的所有功能。
以上就是通过自己抽象出工具类实现JDBC的开发,对比没有使用工具类的版本,优点就是可以减少编写大量的重复代码,进行数据库操作时也比较方便。
首先我们要抽象出一个工具类
抽象出工具类的时候,我们要清楚哪些代码是我们在开发过程中重复写到的(比如创建和获取连接对象),于是将这些重复的代码抽象到自己的工具类中。
下面是我自己抽象出的工具类
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; /** * JDBC工具类 * @author zkc * @version 1.0 2017-09-21 */ public class BaseDAO { /** * 连接对象 */ Connection conn = null; /** * 执行对象 */ PreparedStatement stmt = null; /** * 读取对象 */ ResultSet rs = null; /** * 获取连接对象的方法 * @return Connection */ public Connection getConn(){ try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection("jdbc:mysql://localhost/pet","root","123"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return conn; } /** * 执行增删改操作时调用的方法 * @param sql * @param args * @return int */ public int update(String sql,Object...args){//实际开发中,由于不知道sql语句中要带的参数个数,所以我这样写可以更好的传递参数 int result = 0; try { conn = getConn(); stmt = conn.prepareStatement(sql); for(int i=0;i<args.length;i++){ stmt.setObject(i+1, args[i]); } result = stmt.executeUpdate(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return result; } /** * 执行查询操作时调用的方法 * @param sql * @param args * @return ResultSet */ public ResultSet search(String sql,Object...args){ try { conn = getConn(); stmt = conn.prepareStatement(sql); for(int i=0;i<args.length;i++){ stmt.setObject(i+1, args[i]); } rs = stmt.executeQuery(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return rs; } /** * 关闭对象的方法 */ public void close(){ try { if(rs!=null){ rs.close(); } if(stmt!=null){ stmt.close(); } if(conn!=null){ conn.close(); } } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } }
抽象完工具类后,我们就可以开始使用自己抽象出的工具类了,具体使用如下
在dao的实现类中,我们只需要继承自己抽象出的工具类BaseDAO,就可以方便的调用自己抽象出来的所有功能。
import java.sql.ResultSet; import java.util.ArrayList; import com.pet.bean.pet; import com.pet.dao.BaseDAO; import com.pet.dao.petDAO; public class petDAOImpl extends BaseDAO implements petDAO{ /** * * @auther zkc */ public int add(String name, int breed, int psex, String time, String des) { String sql = "insert into pet values(?,?,?,?,?)"; //因为我抽出来的工具类update方法没有限制参数个数,所以这里传递参数十分方便 int result = update(sql,name,breed,psex,time,des); //由于是增加操作所以调用update方法 return result; } }
以上就是通过自己抽象出工具类实现JDBC的开发,对比没有使用工具类的版本,优点就是可以减少编写大量的重复代码,进行数据库操作时也比较方便。
相关文章推荐
- 传统应用开发公司如何升级自己的平台
- JDBC高级开发(2)---编写自己的JDBC框架
- 数据库面试技巧,通过JDBC展示自己专业性,摘自java web轻量级开发面试教程
- 自己实现的JDBC工具类
- 深入分析JavaWeb Item33 -- 开发自己简易的JDBC框架
- 【游戏服务器开发-准备篇】(三)构建自己的配置文件解析工具类
- 自己实现的JDBC工具类
- 开发自己的框架——(二)数据库工具类的封装
- 自己实现的JDBC工具类
- 深入分析JavaWeb 33 -- 开发自己简易的JDBC框架
- 开发自己的框架——(二)数据库工具类的封装
- 开发自己的框架——(二)数据库工具类的封装
- JDBCUtils动手实现自己的JDBC工具类之二(实践篇)
- SpringJDBC抽象框架简化Web数据库开发
- 自己实现的JDBC工具类
- 自己编写的JDBC的工具类
- 自己实现的JDBC工具类
- 数据库面试技巧,通过JDBC展示自己专业性,摘自java web轻量级开发面试教程
- Java开发数据库连接JDBC工具类
- 使用自己开发好的JDBC框架来升级客户关系管理系统模块