【发布时间】:2015-04-02 08:07:03
【问题描述】:
我想一次插入多条记录并获取每条记录的 id,它是自动递增的。我正在按照以下方式进行操作,但获取更新的行数而不是生成的密钥,在这种情况下为 id。
public int[] addPersons(List<Person> persons)
{
SqlParameterSource[] records= new BeanPropertySqlParameterSource[persons.size()] ;
int i = 0;
for (Person person: persons)
{
records[i]= new BeanPropertySqlParameterSource(person);
i++;
}
SimpleJdbcInsert insertPerson=new SimpleJdbcInsert(dsource).withTableName("PersonTable").usingGeneratedKeyColumns("id");
int [] ids= insertPerson.executeBatch(records);
return ids;
}
这里 Person 是 bean。 那么,对于添加的记录,如何获取自动生成的密钥 id 呢?
【问题讨论】:
标签: java mysql spring jdbc spring-jdbc