在SpringBoot使用mybatis-plus实现Oracle主键自增的详细配置

第一种方案

首先在mybatis的配置文件中写一个全局配置bean,使用com.baomidou.mybatisplus.incrementer.OracleKeyGenerator

<bean id="globalConfig" class="com.baomidou.mybatisplus.entity.GlobalConfiguration">
        
            <!-- AUTO->`0`("数据库ID自增")QW
             INPUT->`1`(用户输入ID")
            ID_WORKER->`2`("全局唯一ID")
            UUID->`3`("全局唯一ID") -->
       
        <property name="idType" value="3" />
        <!-- 主键生成策略 -->
        <property name="keyGenerator"><bean class="com.baomidou.mybatisplus.incrementer.OracleKeyGenerator"></bean></property>
    </bean>

其次配置sqlSessionFactory,将全局配置注入到工厂bean中(这里使用mybatis-plus的工厂bean,其他配置略过):

<bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean">
        ......
        <!-- MP 全局配置注入 -->
        <property name="globalConfig" ref="globalConfig"/>
    </bean>

然后在实体类中指定主键,并配置主键sequence:

@TableName("FE_USER")
//配置主键索引
@KeySequence("SEQ_FE_USER")
public class FeUser extends Model<FeUser> {
	//指定主键id
	@TableId(value="id",type=IdType.INPUT)
        private long id;
        ...
}

第二种方案

第一种方案是基于mybatis.xml配置文件进行配置的,第二种是基于application.ym文件进行配置的,配置基本差不多,可参考官方文档:https://baomidou.gitee.io/mybatis-plus-doc/#/sequence

猜你喜欢

转载自blog.csdn.net/ZixiangLi/article/details/88661413