java - 如何使用 JdbcTemplate 返回自动生成的 id 进行插入?

标签 java mysql spring

我想利用 spring JdbcTemplate 插入一行并返回 mysql 数据库自动生成的 id。

如果没有 spring,我会做类似的事情:

String sql = "INSERT INTO mytable (id, filename, timestamp) VALUES (NULL, ?, NOW())";
Statement st = con.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);

st.setString("test.csv");
st.executeUpdate();
st.getGeneratedKeys().next().getLong(1);

问题:如何使用 JdbcTemplate 实现相同的效果?

最佳答案

简而言之

 Number key = jdbcInsert.executeAndReturnKey(new MapSqlParameterSource(
                parameters));

你可以在identity from sql insert via jdbctemplate查看我的答案

关于java - 如何使用 JdbcTemplate 返回自动生成的 id 进行插入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43910299/

相关文章:

php - 创建mysql查询以按时间间隔获取3天内的数据

java - Android - editText 中的默认值

mysql - 将两个 SQL 数据库与多个表组合起来;在此过程中删除重复项

mysql - SQL GROUP_CONCAT 查询帮助

java - cron 触发器的计时器可以重置吗?

spring - 单个 JMSTemplate 可以在多个生产者中共享吗?

java - 如何通过在java中的post请求中发送文件将数据导入elasticsearch?

java - log4j的配置

java - 在二维数组中查找重复数字

spring - 如何使用 Java 8 --parameter 标志编译 Spring Boot 应用程序