hibernate主键生成策略

本文探讨了自然主键与代理主键的概念,详细介绍了增量、标识、序列等主键生成策略,并展示了如何在MyBatis配置文件中设置主键自增回写方法,适用于不同的数据库环境。

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

表主键分为2类
自然主键和代理主键
自然主键就是pojo类属性作为主键(类属性避免不了修修改改),一般建表我们使用的是代理主键,就是不参与到业务中的。

increment
identity (不适用Oracle)
sequence 序列生成主键(适用于Oracle和DB2)
native 依据本地数据库做选择
uuid 适用于字符串
assigned 手动确认

在mybatis-config.xml 中配置

   <plugins>
        <plugin interceptor="tk.mybatis.mapper.mapperhelper.MapperInterceptor">
            <!--主键自增回写方法,默认值MYSQL,详细说明请看文档HSQLDB-->
            <property name="IDENTITY" value="MYSQL"/>
            <!--可选参数一共3个,对应0,1,2,分别为SequenceName,ColumnName,PropertyName-->
            <property name="seqFormat" value="{0}.nextval"/>
            <!--通用Mapper接口,多个通用接口用逗号隔开-->
            <property name="mappers" value="tk.mybatis.mapper.common.Mapper"/>
        </plugin>
        <!-- 自定义分页插件 -->
        <!--   <plugin interceptor="wang.dreamland.www.common.PageHelper"></plugin>-->
    </plugins>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值