java jdbcTemplate 反回主键 在PreparedStatement能获取吗

@Override
    public Integer save(final Board board) {
        final String sql = "INSERT INTO tz_board(user_id, title, description, category_id, created_at, updated_at, seq) VALUES(?,?,?,?,?,?,?)";
        KeyHolder keyHolder = new GeneratedKeyHolder();
        jdbcTemplate.update(new PreparedStatementCreator() {
            @Override
            public PreparedStatement createPreparedStatement(Connection conn) throws SQLException {
                PreparedStatement ps = jdbcTemplate.getDataSource().getConnection().prepareStatement(sql, new String[]{"user_id", "title", "description", "category_id", "created_at", "updated_at", "seq"});
                ps.setInt(1, board.getUserId());
                ps.setString(2, board.getTitle());
                ps.setString(3, board.getDescription());
                ps.setString(4, board.getCategoryId());
                ps.setLong(5, board.getCreatedAt());
                ps.setLong(6, board.getUpdatedAt());

                ps.setInt(7, "当前返回的主键");

                return ps;
            }
        }, keyHolder);
        return keyHolder.getKey().intValue();
    }

这里能得到主键吗? ps.setInt(7, "当前返回的主键");

阅读 6.2k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题