oracle主键怎么用,oracle 主键怎么使用序列呢?

(1)目前jeesite内置的解决方案,不包含int自增

正常 spring boot 自 2.x系列 ,是可以支持自增的。但是JeeSite该部分源码已经闭源,所以要想实现,只能自行设计处理该类问题。 下面介绍实现思路!

在实体类上添加

@GeneratedValue(strategy = GenerationType.IDENTITY)这个注解即可。

复制代码

JeeSite 4.x系列 继承了Spring Boot2.x 系列内JPA规范,并主要考虑到分布式场景,所以生成的ID是属于uuid。

@Ivy

@GeneratedValue(strategy = GenerationType.IDENTITY,generator = "select uuid()")

private String id;

复制代码

(2)要自己实现咋处理,UUID,我们会调用一个方法来动态设置主键,自增就不行了? 其实有很多种方法。

比如在数据库存建立一张表,专门用来存放id当前最大值的,然后每次插入数据时获取,并加一。这样方法很笨,但是不建议,性能差!简单粗暴!

当然也可以来个配置文件,配置文件记录表——id最大值,这样最多是调用时IO阻塞,或者容易大并发时出现IO异常。

利用redis?这个有点奢侈,估计我说了,也会有人骂我。。。不过性能确实好,为了一个自增都用到Redis了。。。 未来会考虑id 利用某种模式 动态支持常用四类 主键id生成策略。 这个jeecg我看有实现,不过模式也不咋好。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值