yp0123456789
2011-02-18 10:39 阅读 802
已采纳

请问使用JdbcTemplate新增数据如何获得改数据的自增id?

请问使用JdbcTemplate做insert操作的时候。该表的主键为自增。我需要改条数据的id作为外键进行其他操作。用update的方法好像不能返回插入的对象。请问如何获得改id。
ps:请别说hibernate与ibatis。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

  • 已采纳
    remotejsky remotejsky 2011-02-18 11:05

    我们公司采取的是首先从数据库查询后再保存,这里有一个顶级的JDBCDaoSupport 提供很多常用方法:
    [code="java"]
    protected Long getSequenceLongValue(String sequenceName) {
    String sql = "select " + sequenceName + ".nextval from dual";
    if (logger.isDebugEnabled()) {
    logger.debug("读取Sequence: sql = " + sql);
    }
    Long value = getJdbcTemplate().queryForLong(sql);
    if (logger.isDebugEnabled()) {
    logger.debug("新生成的id = " + value);
    }
    return value;
    }
    [/code]

    或者试一试这个直接的:http://www.blogjava.net/junky/archive/2007/07/11/129604.html

    点赞 评论 复制链接分享

相关推荐