Java 如何绕过JDBCTemplate org.springframework.dao.DuplicateKeyException

Java 如何绕过JDBCTemplate org.springframework.dao.DuplicateKeyException,java,spring-boot,sql-insert,jdbctemplate,Java,Spring Boot,Sql Insert,Jdbctemplate,我正在使用SpringBoot和jdbc模板,并在其中执行批量插入,以获取一些重复数据。我想忽略重复的行,系统应该继续插入,但我遇到异常,插入被回滚。如何继续插入数据,将重复行放在一边 使用下面的代码插入 jdbcTemplate.execute(insertCommand); 使用下面的SQL,它不会对重复的键条目执行任何操作 INSERT ... ON DUPLICATE KEY UPDATE key_column = key_column 如果不存在,请检查数据->插入,或者您

我正在使用SpringBoot和jdbc模板,并在其中执行批量插入,以获取一些重复数据。我想忽略重复的行,系统应该继续插入,但我遇到异常,插入被回滚。如何继续插入数据,将重复行放在一边

使用下面的代码插入

    jdbcTemplate.execute(insertCommand);

使用下面的SQL,它不会对重复的键条目执行任何操作

INSERT ... ON DUPLICATE KEY UPDATE key_column = key_column

如果不存在,请检查数据->插入,或者您可以使用
insert。。。关于重复密钥更新…
对于insertCommand(更新上次更新人)P/s:不应使用插入忽略…,如果不存在,不仅重复密钥忽略是最佳方法。然而,我在这里会有一个模糊的解决方案。在事务注释中,可以使用dontrollbackon参数。例如@Transactional(dontRollbackOn=DuplicateKeyException.class)。不过我还没有测试过这个。