java Spring MVC在插入记录后检索数据库自动生成的记录主密钥
我正在使用JdbcTemplate。我想做的是在数据库中插入一条记录,但是表的主键设置为自动递增,因此我不必插入值,一旦完成插入,我如何检索id?。有没有一种简单的方法可以做到这一点,或者我需要做另一个查询来选择它
Jdbc插入示例
这里的公民ID是自动生成的
public void saveCitizen(Citizens citizen) {
logger.debug("In saveCitizens");
int count = getJdbcTemplate().update("INSERT INTO crimetrack.tblcitizens (citizenId,fName,lName,oName,photo,countryId,addLn1, addLn2, addLn3,"
+"genderId,ethnicityId, skinColorId, eyeColorId,hairColorId,occupationId,"
+"phoneNo, maritalStatusId, noticableFeatures,weight,height,citizenTypeId,dob)"
+ "VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"
, new Object[]{citizen.getfName(),citizen.getlName(),citizen.getoName(),
citizen.getPhoto(),citizen.getCountryId(),citizen.getAddLn1(),
citizen.getAddLn2(),citizen.getAddLn3(),citizen.getGenderId(),
citizen.getEthnicityId(),citizen.getSkinColorId(),citizen.getEyeColorId(),
citizen.getHairColorId(),citizen.getOccupationId(),citizen.getPhoneNo(),
citizen.getMaritalStatusId(),citizen.getNoticeableFeatures(),
citizen.getWeight(),citizen.getHeight(),citizen.getCitizenTypeId(),
citizen.getDob()});
logger.info(count +" Rows affected in tblCitizens");
# 1 楼答案
请参见12.2.8:检索自动生成的密钥:
http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/jdbc.html
# 2 楼答案
只要给出示例代码,以防链接断开。请看: