注入需要的模版对象
@Resource private NamedParameterJdbcTemplate jdbcTemplate; @Resource private JdbcTemplate jdbcTemplateSimple;
插入并获取自增主键
通过内部类来实现,传入接收返回值的对象:
KeyHolder keyHolder = new GeneratedKeyHolder();
jdbcTemplateSimple.update(new PreparedStatementCreator() {
@Override
public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
PreparedStatement ps = connection.prepareStatement(insert_sql, Statement.RETURN_GENERATED_KEYS);
ps.setLong(1, 2L);
ps.setString(6, "test");
return ps;
}
}, keyHolder);
long id = keyHolder.getKey().longValue();查询返回结果集List
这是一个常用操作,一般在使用JdbcTemplate时都是返回这样的数据
List<Map<String, Object>> list = jdbcTemplateSimple.queryForList("select * from test where code=? and state=?", "X001", 1);根据Map参数来查询,并将结果集封装成对应的Bean
Map<String,Object> map = new HashMap();
map.put("code","X001");
map.put("state",1);
List<TestBean> beanList = jdbcTemplate.query("select * from test where code=:code and state=:state", map, new RowMapper<TestBean>() {
@Override
public BidItemBean mapRow(ResultSet rs, int i) throws SQLException {
TestBean b = new TestBean();
b.setId(rs.getLong("id"));
b.setCode(rs.getString("code"));
b.setState(rs.getString("state"));
return b;
}
});更新删除
都得用的操作,简单命令一行搞定
jdbcTemplateSimple.update("delete from test where a=? and b=?", "X001", 1);
推荐您阅读更多有关于“ 模版 spring JdbcTemplate 自增主键 ”的文章
Java小强
未曾清贫难成人,不经打击老天真。
自古英雄出炼狱,从来富贵入凡尘。
发表评论: