JDBC 查询操作的封装 可以分为两种
一:创建 一个接口, 通过创建匿名内部类,重写接口的方法,实现 的效果相当于 方法的传递。
二:通过反射。
代码如下:
方法一:
dao层
给出sql语句,以及给出要查询的实体,同时重写接口中的方法(该方法针对某一个实体解析查询的结果并放入集合当中)
return jdbcUtil.executeQuery("Select id,name,b_id,gerden from student", new RowMap<Student>() {
@Override
public Student rowMapping(ResultSet rs) {
Student student = new Student();
try {
student.setId(rs.getInt("id"));
student.setName(rs.getString("name"));
student.setB_id(rs.getInt("b_id"));
student.setGerden(rs.getInt("gerden"));
} catch (SQLException e) {
e.printStackTrace();
}
return student;
}
}, null);
jdbcUtil
public static<T> List<T> executeQuery(String sql,RowMap<T> rowMap,Object...params){
List<T> list = new ArrayList<>();
Connection con = getConnection();
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
pstmt=con.prepareStatement(sql);
if(params!=null) {