Java使用当前日期加四位数实现每日自增单号工具类
生活随笔
收集整理的这篇文章主要介绍了
Java使用当前日期加四位数实现每日自增单号工具类
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
方法中需要传递你查DB的最新的订单号,废话不多说,直接上代码
import java.text.SimpleDateFormat; import java.util.Date;/*** @author 码不多* @version 1.0* @description: 自动生成单号工具类 格式 : yyyyMMdd0001,每日从0001开始自增长* @date 2021/9/16 11:07*/ public class GenerateOddNumbersUtil {/*** 功能描述: 自动生成单号* @author 码不多* @date 2021/9/16* @param maxOddNumbers 数据库中的最新单号* @return java.lang.String*/public static String getOddNumbers(String maxOddNumbers){//定义变量(最新的单号)String newOddNumber = "";//获取当前日期并将其进行格式化SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");String formatDate = simpleDateFormat.format(new Date());//判断数据中的最大单号是否存在,是否包含当前日期if (maxOddNumbers != null && maxOddNumbers.contains(formatDate)){//截取后四位数String endNum = maxOddNumbers.substring(8);//把截取的最后四位数解析为intint endIntNum = Integer.parseInt(endNum);//在将其加1(自增1)int newEndIntNum = 10000+endIntNum+1;//把10000的1去掉,获取到最新的后四位String newEndNum = String.valueOf(newEndIntNum).substring(1);//生成单号newOddNumber = formatDate+newEndNum;//将单号返回return newOddNumber;}else{//如果为空(第一次生成)或者当前最大订单号的日期与当前日期不一致说明需要重新计数生成单号newOddNumber = formatDate+"0001";//将单号返回return newOddNumber;}} }下面是查询数据库最新单号的sql :查询id最大的行数据即为最新的单号所在。
<select id="findNewOddNumbers" resultType="string">SELECT odd_numbers FROM mabuduo_info WHEREid = (SELECT MAX(id) FROM mabuduo_info )</select>总结
以上是生活随笔为你收集整理的Java使用当前日期加四位数实现每日自增单号工具类的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 创业公司如何分配股权?
- 下一篇: JavaSE入门:面向对象(三)