JdbcTemplate
执行DDL和DML语句
JdbcTemplate jdbcTemplate = new JdbcTemplate(DataSourceUtils.getDataSource());
//DDL
jdbcTemplate.execute("create table ......");
//DML
jdbcTemplate.update("insert into ......");
执行DQL语句
rowMapper(手动映射)
//DQL
RowMapper<T> rowMapper = new RowMapper<T>(){
@Ovweeide
public T mapRow(ResultSet rs,int i){
//手动映射
......
retuen T;
}
}
List<T> T = jdbcTemplate.query(sql,rowMapper)
ResultSetExtractor(手动映射)
ResultSetExtractor<List<T>> resultSetExtractor = new resultSetExtractor(){
@override
public List<T> extractData(ResultSet rs){
//自己准备集合
List<T> TList = new ArrayList<>();
while(rs.next()){
//手动映射
}
return TList;
}
}
List<T> TList = jdbcTemplate.query(sql,resultSetExtractor);
BeanPropertyRowMapper(自动映射)
BeanPropertyRowMapper<T> autoRowMapper = new BeanPropertyRowMapper<>(T.class);
List<T> TList = jdbcTemplate.query(sql,autoRowMapper);
Map
List<Map<T>> TMapList = jdbcTemplate.queryForList(sql);
T(自定义实体类需要借助BeanPropertyRowMapper自动映射)
//BeanPropertyRowMapper<T> autoRowMapper = new BeanPropertyRowMapper<>(T.class);
T T = jdbcTemplate.queryForObject(sql,autoRowMapper/T.class,args);