问题描述
- 得到主键自动增长值KeyHolder
-
为什么我的代码执行后KeyHolder的值还是为空呢?
`public class UserDaoImpl implements IUserDao {
private NamedParameterJdbcTemplate simpleJdbcTemplate = new NamedParameterJdbcTemplate (JDBCUtils4.getDataSource());
@Override
public boolean addUser(RegistForm registForm) throws Exception {
//使用命名参数来给"?"占位符命名
String sql = "insert into user(username,birthday,major,score) values(:username,:birthday,:major,:score)";
//给各个占位符赋值
SqlParameterSource param = new BeanPropertySqlParameterSource(registForm);
//执行更新操作
KeyHolder keyHoder = new GeneratedKeyHolder();
int count = this.simpleJdbcTemplate.update(sql, param, keyHoder);System.out.println("-------------------------------"+keyHoder+"----------------------"); int id = keyHoder.getKey().intValue(); registForm.setId(id); if(count>0) return true; else return false; } }
`
时间: 2024-09-20 00:00:16