Java 自动递增的唯一ID字段的jdbcTemplate.update
我有一个Java 自动递增的唯一ID字段的jdbcTemplate.update,java,spring,oracle,jdbc,jdbctemplate,Java,Spring,Oracle,Jdbc,Jdbctemplate,我有一个EMPLOYEE表,它有4个字段身份证,姓名,年龄,工资ID是唯一且自动递增的 下面是使用Spring的JDBCTemplate在表中插入行的代码。请建议,如何自动递增ID字段 String sql = "insert into employee values (?,?,?,?)" jdbcTemplate.update( sql, ID, bean.getName(), bean.getAge(), bean.getSalary()) 我明白了,你把你的问题标记为Oracle,然后使
EMPLOYEE
表,它有4个字段<代码>身份证,姓名
,年龄
,工资
<代码>ID是唯一且自动递增的
下面是使用Spring的JDBCTemplate
在表中插入行的代码。请建议,如何自动递增ID
字段
String sql = "insert into employee values (?,?,?,?)"
jdbcTemplate.update( sql, ID, bean.getName(), bean.getAge(), bean.getSalary())
我明白了,你把你的问题标记为Oracle,然后使用Oracle
序列
String sql = "insert into Employee values (id_seq.nextval, ?, ?, ?)";
jdbcTemplate.update(sql, bean.getName(), bean.getAge(), bean.getSalary());
参考:。只需将以下代码添加到您的域中:
参考:
你的域是什么样子的?共享你的员工类代码Employee
是一个表而不是一个类。它说的是jdbc模板。她似乎没有使用JPA或任何其他ORM。
import org.springframework.jdbc.support.GeneratedKeyHolder;
import org.springframework.jdbc.support.KeyHolder;
final String INSERT_SQL = "insert into my_test (name) values(?)";
final String name = "Rob";
KeyHolder keyHolder = new GeneratedKeyHolder();
jdbcTemplate.update(
new PreparedStatementCreator() {
public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
PreparedStatement ps =
connection.prepareStatement(INSERT_SQL, new String[] {"id"});
ps.setString(1, name);
return ps;
}
},
keyHolder);