我使用spring JDBC
模板在Oracle中插入数据,我有一个要求是我必须使用spring JDBC
模板批量更新批量插入,并且我想要自动生成的主键和那个键我需要传递另一种方法,但我无法使用批量更新获得自动生成的主要方法。
你能提供解决方案吗?
答案 0 :(得分:0)
假设你在oracle中有自动生成的PK,
请参阅示例代码:
final String insertNewFieldSql = Config.getSqlProperty("insert_new_field_record");
GeneratedKeyHolder holder = new GeneratedKeyHolder();
MapSqlParameterSource parameters = null;
for (ParsedData field : fields) {
parameters = new MapSqlParameterSource();
parameters.addValue("FIELD_1",parsedEmail.getDbRecordId())
.addValue("FIELD_2",field.getName());
namedParameterJdbcTemplate.update( insertNewFieldSql, parameters, holder, new String[] {"PK_FIELD_ID" } );
Long newFieldKey = holder.getKey().longValue();
logger.log(Level.FINEST, "row was added: " + newFieldKey);
}