mybatis generator 使用sequence自动生成主键

本文介绍了如何在MyBatis Generator中利用数据库sequence生成主键。首先在数据库创建sequence,例如id_seq,然后在generatorConfig.xml配置文件中针对需要主键生成的表进行配置,使用generatedKey元素,并指定sqlStatement。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.首先在数据库中创建sequence

CREATE SEQUENCE id_seq nocache;

这里创建了一个叫 id_seq的序列。

2.修改generatorConfig.xml
在需要主键生成的表下加入<generatedKey> 元素

  <table tableName="tjs_road" domainObjectName="Road">
            <generatedKey  type="pre"  column="road_id" sqlStatement="select id_seq.nextval from dual"></generatedKey>
            <columnOverride column="road_id" property="roadId"/>
            <columnOverride column="road_name" property="roadName"/>
        </table>

generatedKey中的sqlStatement会出现在对应的生成的sqlmap.xml中

 <insert id="insertSelective" parameterType="me.maiz.trainning.framework.ssm.dal.model.Road">
     <selectKey keyProperty="roadId" order="BEFORE" resultType="java.math.BigDecimal">
      select id_seq.nextval as roadId from dual
    </selectKey>
    insert into TJS_ROAD
      ...

亲测可用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值