当前位置: 首页 > news >正文

Java-根据前缀-日期-数字-生成流水号(不重复)

🎈边走、边悟🎈迟早会好

小伙伴们在日常开发时可能会遇到的业务-生成流水号,在企业中可以说是比较常见的需求,

可以采用"前缀+日期+数字"的方式(ps:此方式是需要用到缓存的)
前缀:为了更好的标识这个流水号是属于哪种类型;
日期:为了防止重复;
数字:为了表示当前的流水所处序号。

SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd");
//todo  替换自己想要的前缀
String code = "xicui-" + df.format(new Date());
//模糊查询当前最大的编号
String maxCode = baseMapper.maxRoundCode(code);
String newCode = null;
if (StringUtils.isEmpty(maxCode)) {newCode = code + "-01";
} else {//切割字符串,取查到编号的最后两位String getMaxCode = maxCode.substring(maxCode.length()-2,maxCode.length());newCode = code + "-"+getNum(getMaxCode);
}

编号生成的方法-直接复制即可 

//编号生成
public static String getNum(String code) {String roundCode = "-01";if (code != null && !code.isEmpty()) {int intCode = Integer.parseInt(code) + 1;if (intCode < 99) {roundCode = String.format(String.valueOf(intCode));} else {throw new RuntimeException("500轮次编号达到最大");}}//编号前面补0DecimalFormat df = new DecimalFormat("00");String newCode = df.format(Integer.parseInt(roundCode));return newCode;
}

 模糊查询sql

select max(serial_number) from admission where serial_number like concat(#{code},'%')

 

 🌟感谢支持 听忆.-CSDN博客

🎈众口难调🎈从心就好

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 力扣34题 双二分查找(简单易懂)
  • go语言的命名规则
  • C#中的Func
  • 探索 IPython %%sql 魔术:数据库交互的高效工具
  • git 使用教程
  • 压测实操--kafka-consumer压测方案
  • 【MSP430】DriverLib库函数,GPIO相关函数介绍
  • 数据传输安全--IPSEC
  • 驱动开发系列07 - 驱动程序如何分配内存
  • Python | Leetcode Python题解之第279题完全平方数
  • ActiViz控件解析及C#实践指南
  • Atlassian Intelligence工具集解析:从自然语言到JQL处理,从虚拟代理到AI摘要、编辑器中的生成式AI等,全方位提升团队协作效率
  • 如何看待LabVIEW数据清洗的重要性?
  • 关于Tk地区
  • 【Zynq UltraScale+ RFSoC】~~~
  • Hibernate【inverse和cascade属性】知识要点
  • js数组之filter
  • Solarized Scheme
  • 测试开发系类之接口自动化测试
  • 产品三维模型在线预览
  • 云大使推广中的常见热门问题
  • # Python csv、xlsx、json、二进制(MP3) 文件读写基本使用
  • #define
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (10)ATF MMU转换表
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (Redis使用系列) SpringBoot中Redis的RedisConfig 二
  • (动手学习深度学习)第13章 计算机视觉---微调
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (附源码)计算机毕业设计SSM在线影视购票系统
  • (免费领源码)python+django+mysql线上兼职平台系统83320-计算机毕业设计项目选题推荐
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • (转)AS3正则:元子符,元序列,标志,数量表达符
  • (转)LINQ之路
  • .NET 2.0中新增的一些TryGet,TryParse等方法
  • .NET 6 Mysql Canal (CDC 增量同步,捕获变更数据) 案例版
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .NET Framework 和 .NET Core 在默认情况下垃圾回收(GC)机制的不同(局部变量部分)
  • .net 受管制代码
  • .net项目IIS、VS 附加进程调试
  • [ vulhub漏洞复现篇 ] Jetty WEB-INF 文件读取复现CVE-2021-34429
  • [2019/05/17]解决springboot测试List接口时JSON传参异常
  • [C++] vector list 等容器的迭代器失效问题
  • [cb]UIGrid+UIStretch的自适应
  • [CSAWQual 2019]Web_Unagi ---不会编程的崽
  • [hihocoder1395] 最大权闭合子图
  • [IE9] IE9 beta版下载链接
  • [iphone-cocos2d]关于Loading的若干处理和讨论
  • [Java基础]—JDBC
  • [NHibernate]一对多关系(关联查询)
  • [NOIP2011DAY1P1]铺地毯
  • [office] 怎么在Excel2003菜单栏自定义一个选项卡 #其他#微信#知识分享
  • [pytorch] 2. tensorboard