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

被折叠的 条评论
为什么被折叠?



