final String sql = "insert into test(v_id,c_id,v_name) values (test_seq.nextval,:cName,:vName)";
//用来封装参数的实体,这个没变要和数据库中表对应
CnameAndVname entity=new CnameAndVname();
entity.setcName(cName);
entity.setvName(vName);
NamedParameterJdbcTemplate namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(jdbcTemplate);
SqlParameterSource paramSource = new BeanPropertySqlParameterSource(entity);
GeneratedKeyHolder generatedKeyHolder = new GeneratedKeyHolder();
namedParameterJdbcTemplate.update(sql, paramSource, generatedKeyHolder, new String[]{"V_ID"});//V_ID为返回的主键
Number number = generatedKeyHolder.getKey();
// 返回的主键
Long vid = number.longValue();
return vid;
自己尝试了,没问题,故推荐给大家,希望能帮助到大家
spring JdbcTemplate下访问Oracle数据库插入数据时返回序列增长的主键
最新推荐文章于 2024-06-27 08:00:00 发布