java jdbcTemplate 反回主键 在PreparedStatement能获取吗
PHP中文网
PHP中文网 2017-04-17 11:59:53
[Java讨论组]
@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, "当前返回的主键");

PHP中文网
PHP中文网

认证0级讲师

全部回复(3)
伊谢尔伦

你这里要得到主键干嘛用?

PHP中文网

有例子:http://bailong139.blog.163.com/blog/static/207238100201331383516951/

PHP中文网

mysql的话, 调用

SELECT LAST_INSERT_ID();

http://dev.mysql.com/doc/refman/5.7/en/information-functions.html#function_last-insert-id
http://dev.mysql.com/doc/refman/5.7/en/mysql-insert-id.html

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号