项目开发22

66 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第18天,点击查看活动详情

编写BaseDao,对DAO数据库持久层增删查改经行统一处理

上面是今天的主要完成任务之一。其实这个任务应该在编码时就已经有所体现了。我的思路就是在DAO接口中定义相对应的方法,再在DAOImpl中实现相应的sql语句的编写。这有些繁琐。如果使用mybatis或者是mybatisplus就可以直接使用注解开发在DAO接口中就实现相应的sql语句编写。也可以在xml中编写复杂sql语句再映射到相应方法上。总之,mybatis简化了DAO的操作。但由于这套系统无法使用框架,因此,得用原始的方法进行编写。

业务实现

首先一般都要创建3个东西,

Connection conn = null;

PreparedStatement ps = null;

ResultSet rs = null;

上面三个东西十分重要。

conn是来创建与数据库之间的连接的。

可以通过 ps = conn.prepareStatement(sql);来获取ps

而ps则是跟数据库有关的东东。比如说,修改一条记录,影响行数为1行,那么就可以用一个int型变量来接收ps.executeUpdate()也就是上面的1行。如果进行的是查询操作,那么就没有影响行数,也就是说不用使用ps.executeUpdate()。也可以通过ps.set数据类型(sql语句中?的位置,属性值)来设置sql语句。

rs

可以通过 rs = ps.executeQuery();来获取ps。也就是说,有rs就有ps,有ps不一定有rs。可以通过rs.get数据类型(数据库中对应字段的名称)来从数据库中获取到相应字段的值。

由于上述方法十分常用,因此绝大部分我都封装成一个方法进行调用。这样子也就不会在idea中报重复代码的warn,也使得编码看起来更加简洁,规范。