使用BaseDao可以将重复的操作整合,如对数据的增删改查,减少代码的冗余。
增删改封装一为个方法,查询功能封装一个方法,查询总数据个数封装一个方法(方便实现分页查询功能)。
可以使其它Dao继承BaseDao而使用。
代码:
public class basedao<T> {
private Connection connection = null;
private PreparedStatement pstmt = null;
private ResultSet resultSet = null;
//增删改
public int update(String sql,Object...objects){
try {
connection = JdbcUtils.getConnection();
pstmt = connection.prepareStatement(sql);
if(objects != null){
for (int i = 0; i < objects.length; i++) {
pstmt.setObject(i+1,objects[i]);
}
}
return pstmt.executeUpdate();//成功返回1
} catch (SQLException e) {
e.printStackTrace();
} finally {
JdbcUtils.closeConnection(connection,pstmt,resultSet);
}
return -1;//失败返回-1
}
//查询所有数据
public List<T> queryAll(String sql, Class<T> clazz, Object...objects){
ArrayList<T> list = new ArrayList<