简单数据库操作之查询篇
经过了漫长的时间,我才开始写这篇文章,也算是给这个篇幅画上句号吧!!
代码块
这部分是查询所需要的代码,例如:
public List<E> query(String sql, IGetEntity<E> getEntity, Object...objs){
ResultSet rs = null;
PreparedStatement pst = null;
List<E> list = new ArrayList<E>();
Connection conn = this.getConn();
try{
pst = conn.prepareStatement(sql);
if(objs != null && objs.length != 0){
for (int i = 0; i < objs.length; i++) {
pst.setObject(i+1, objs[i]);
}
}
rs = pst.executeQuery();
while(rs.next()){
//由于无法确定实体类具体对象,因此,可在外部对实体类进行抽象来获取
//从结果集中取出一条数据出来,转化为实体类对象的形式
E e = getEntity.getEntity(rs);
list.add(e);
}
}catch(Exception e){
e.printStackTrace();
}finally{
DBHelper.closeAll(rs, pst, null);
}
return list;
}
代码讲解
这是一个完全不依赖任何框架来实现数据库的操作,也就是说这是最底层的写法。虽然生产上,不会用到这种底层的写法,但是,了解底层的实现方式,能让我们今后的学习有很大的帮助。