Java使用当前日期加四位数实现每日自增单号工具类
生活随笔
收集整理的這篇文章主要介紹了
Java使用当前日期加四位数实现每日自增单号工具类
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
方法中需要傳遞你查DB的最新的訂單號(hào),廢話不多說(shuō),直接上代碼
import java.text.SimpleDateFormat; import java.util.Date;/*** @author 碼不多* @version 1.0* @description: 自動(dòng)生成單號(hào)工具類 格式 : yyyyMMdd0001,每日從0001開(kāi)始自增長(zhǎng)* @date 2021/9/16 11:07*/ public class GenerateOddNumbersUtil {/*** 功能描述: 自動(dòng)生成單號(hào)* @author 碼不多* @date 2021/9/16* @param maxOddNumbers 數(shù)據(jù)庫(kù)中的最新單號(hào)* @return java.lang.String*/public static String getOddNumbers(String maxOddNumbers){//定義變量(最新的單號(hào))String newOddNumber = "";//獲取當(dāng)前日期并將其進(jìn)行格式化SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");String formatDate = simpleDateFormat.format(new Date());//判斷數(shù)據(jù)中的最大單號(hào)是否存在,是否包含當(dāng)前日期if (maxOddNumbers != null && maxOddNumbers.contains(formatDate)){//截取后四位數(shù)String endNum = maxOddNumbers.substring(8);//把截取的最后四位數(shù)解析為intint endIntNum = Integer.parseInt(endNum);//在將其加1(自增1)int newEndIntNum = 10000+endIntNum+1;//把10000的1去掉,獲取到最新的后四位String newEndNum = String.valueOf(newEndIntNum).substring(1);//生成單號(hào)newOddNumber = formatDate+newEndNum;//將單號(hào)返回return newOddNumber;}else{//如果為空(第一次生成)或者當(dāng)前最大訂單號(hào)的日期與當(dāng)前日期不一致說(shuō)明需要重新計(jì)數(shù)生成單號(hào)newOddNumber = formatDate+"0001";//將單號(hào)返回return newOddNumber;}} }下面是查詢數(shù)據(jù)庫(kù)最新單號(hào)的sql :查詢id最大的行數(shù)據(jù)即為最新的單號(hào)所在。
<select id="findNewOddNumbers" resultType="string">SELECT odd_numbers FROM mabuduo_info WHEREid = (SELECT MAX(id) FROM mabuduo_info )</select>總結(jié)
以上是生活随笔為你收集整理的Java使用当前日期加四位数实现每日自增单号工具类的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 创业公司如何分配股权?
- 下一篇: JavaSE入门:面向对象(三)