场景: 公司内部有个业务场景是后台审核之后需要生成一个流水号,规则是: 201807280001,201807280002,201807280003,后面四位依次递增,前面年月日取当前时间并且转换成yyyymmdd格式。 于是想到redis比较适合做这种 ...
原理:利用redis的RedisAtomicLong类实现该功能:让其每天第一次放置一个新的自增的值 一天过期 然后和每天的日期相加就可以了例子: 当天就是 如果要多少个 ,可以自己配置 工具类中 一 pom.xml配置 二 redisTemplate配置 三 代码实现 四 工具类 可以直接添加方法 五 测试 六 控制台输出 ...
2020-09-17 18:26 1 2091 推荐指数:
场景: 公司内部有个业务场景是后台审核之后需要生成一个流水号,规则是: 201807280001,201807280002,201807280003,后面四位依次递增,前面年月日取当前时间并且转换成yyyymmdd格式。 于是想到redis比较适合做这种 ...
项目开发时,使用了两套数据库,开发环境和上线环境,数据库表中大多採用了自增主键, 比方: id int unsigned primary key auto_increment, 但往往会碰到一些问题。比方: 开发环境中,使用爬虫抓取一些数据,建立索引。再把数据迁移 ...
第一种实现流水号的方法: 注:取号全部在 RUL_Sequence 表中操作,不用管流水号所在表中的最大流水号 可以自由配置流水号规则。 前提:需要一个表和一个存储过程。 表如下图: 存储过程如下: [sql ...
@Component public class CreateCodeUtils { @Autowired private RedisUtils redisUtils; //生成code的长度 private static final int codeLength = 12; //过期时间 ...
最近在做项目过程中,经常会遇到生成订单流水号唯一性的应用,也有不少同事也请教我对唯一性的 "流水号"的问题,根据个人所见,一般生成的规则都是根据日期来进行操作,我目前在做的一个项目:”报告卡“上的编码就是根据 ”yyyyMMdd+四位数字(累加)“的格式生成,一般对这一类的操作最好是在存储过程中生成 ...
1:用sequence序列生成流水号 create sequence L_SIGN_IN minvalue 1 maxvalue 9999999999999999999999999999 start with 1 increment by 1 cache 20; 这里是生成了序列 ...
...
如果你不想在数据库操作的话,这里有个方法可以一试,直接上代码: Controller调用: no = list.get(0).getBillSeq()这里是 ...