使用mybatis做持久层框架时,数据库的主键生成策略怎么维护?
使用hibernate时,主键生成策略可以在配置文件中配置,但是使用mybatis时该怎么办?(只能依靠手动建表时自己设置的维护策略吗?MySQL我知道可以设置主键自增,...
使用hibernate时,主键生成策略可以在配置文件中配置,但是使用mybatis时该怎么办?(只能依靠手动建表时自己设置的维护策略吗? MySQL我知道可以设置主键自增,但是能用其他的策略吗? 类似UUID什么的? 然后就是oracle求大神详解)
平常主要使用MySQL和oracle数据库,求大神赐教。
(楼主刚学Java 谢谢!) 展开
平常主要使用MySQL和oracle数据库,求大神赐教。
(楼主刚学Java 谢谢!) 展开
1个回答
推荐于2016-04-26 · 知道合伙人互联网行家
关注
展开全部
两种方式:
方式1:假设Bean的属性xxx为主键,则在getXxx() 前添加以下注解
@Id
@SequenceGenerator(name="名称A", sequenceName="库中已存在的sequence名称",allocationSize=递增值)
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="名称A")
方式2:假设Bean的属性xxx为主键,则在getXxx() 前添加以下注解
@Id
@TableGenerator(name="名称A",allocationSize=递增值)//若不指定递增值,则生成的主键值不一定连续
@GeneratedValue(strategy=GenerationType.TABLE, generator="名称A")
方式1:假设Bean的属性xxx为主键,则在getXxx() 前添加以下注解
@Id
@SequenceGenerator(name="名称A", sequenceName="库中已存在的sequence名称",allocationSize=递增值)
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="名称A")
方式2:假设Bean的属性xxx为主键,则在getXxx() 前添加以下注解
@Id
@TableGenerator(name="名称A",allocationSize=递增值)//若不指定递增值,则生成的主键值不一定连续
@GeneratedValue(strategy=GenerationType.TABLE, generator="名称A")
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询