通常我们都会用数据库中的主键作为订单号,而id的生成方式又以自增,uuid,雪花id最为常见.但是这些并不适合作为订单号.订单号一般要体现出年月日等信息.方便快速定位是哪个时间的订单.如果我们直接使用时间作为id,会有重复的可能.这里就给大家介绍一种最为简单的一种方式.
时间+自增id , 这里借用了数据库的自增id,达到不会重复的效果.又能体现时间
我们数据库中的id依旧是自增id,不过这里加了一个前缀,在使用时采用的是拼接的方式.添加订单的时候会将当天的时间同时插入进去.
order.setIdPrefix(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd")));
我们可以给id的自增初始值设置的大一点 ,页面展示如下
为了方便,我们可以再实体类中定义一个方法,方便获取拼接的id