欢迎光临
我们一直在努力

GeneratedKeyHolder获取返回新增记录时的自增长主键值

Spring利用GeneratedKeyHolder,提供了一个可以返回新增记录对应主键值的方法: 

int update(String sql, SqlParameterSource paramSource, KeyHolder generatedKeyHolder)

Spring为KeyHolder接口指代了一个通用的实现类GeneratedKeyHolder,该类返回新增记录时的自增长主键值。假设我们希望在新增数据 后,将主键值加载到对象中,则可以按以下代码进行调整:

    public static <T extends MyTemplate> void addConcludesId(String sql, T t) {
        SqlParameterSource ps = new BeanPropertySqlParameterSource(t);
        KeyHolder keyHolder = new GeneratedKeyHolder();
        jdbcHelper.update(sql, ps, keyHolder);
        int id = keyHolder.getKey().intValue(); // 返回主键值
        System.out.println(id);
        t.setId(id);
    }
赞(0)
版权归原作者所有,如有侵权请告知。达维营-前端网 » GeneratedKeyHolder获取返回新增记录时的自增长主键值

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址