版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/u010741376/article/details/46637855
- Spring的JdbcTemplate插入操作傳回主鍵ID的方法:
- /**
- *
- *
- * 增加并且擷取主鍵
- * @param sql sql語句
- * @param params 參數
- * @return 主鍵
- */
-
public Long insertAndGetKey(final String sql, final Student
student ) {
- KeyHolder keyHolder = new GeneratedKeyHolder();
- jdbcTemplate.update(new PreparedStatementCreator() {
- public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
- PreparedStatement ps = connection.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);
-
ps.setString(1, student
.getTitle());
-
ps.setString(2, student
.getContent());
-
ps.setString(3, student
.getForm());
-
ps.setString(4, student
.getSffs());
-
ps.setString(5,
new Date(student.getTime().getTime()));
-
ps.setString(6, student
.getBy2());
-
ps.setString(7, student
.getBy3());
- return ps;
- }
- }, keyHolder);
- Long generatedId = keyHolder.getKey().longValue();
- return generatedId;
- }