欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java生成遞增流水號(hào)(編號(hào)+時(shí)間+流水號(hào))簡單示例

 更新時(shí)間:2023年07月14日 10:33:22   作者:chen_ying__  
這篇文章主要給大家介紹了關(guān)于Java生成遞增流水號(hào)(編號(hào)+時(shí)間+流水號(hào))的相關(guān)資料,在開發(fā)項(xiàng)目漫長的過程中常常會(huì)遇到流水號(hào)需要自動(dòng)生成的問題存在,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下

Java編寫一個(gè)流水號(hào),要求格式【編號(hào)】【時(shí)間】【流水號(hào)】。編號(hào)和時(shí)間比較簡單,直接獲取拼接就可以,流水號(hào)使用類型轉(zhuǎn)換來實(shí)現(xiàn)。

獲取車間編號(hào),變量為workCenter(例子A1、B2、C3);

使用simpleDateFormat獲取時(shí)間格式:20230112。變量為dateNo;

初始化一個(gè)流水號(hào)markNo1,使用join拼接:A120230112001;

使用編號(hào)與時(shí)間拼接,用于模糊查詢的參數(shù),DESC取到最新一條數(shù)據(jù)(這里是第一條);

判斷初始流水號(hào)是否存在數(shù)據(jù)庫,如果不存在,則返回初始化流水號(hào);

若存在,取最新一條數(shù)據(jù),截取后3位字符串,轉(zhuǎn)換為數(shù)字number1;

在number1的基礎(chǔ)上+1,得到number2,再將number2轉(zhuǎn)換成格式化字符串“00X”;

最后將字符串與編號(hào)、時(shí)間拼接一起,返回。OK!

 
            JSONObject jsonObject = new JSONObject();
            //獲取車間編號(hào)
            String workCenter = workCenterNo.substring(0,2);
            //獲取時(shí)間編號(hào)
            SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
            String dateNo = sdf.format(new Date()); // 格式化日期 date: 20230112
            //初始化隔離編號(hào)
            String markNo1 = String.join("",workCenter,dateNo,"001");
            //模糊查找用
            String workDate = String.join("",workCenter,dateNo);
            //模糊查詢隔離編號(hào)
            String markSQL = "SELECT MARK_NO  FROM BP_MARKING WHERE MARK_NO  LIKE ? order by CREATE_DATE DESC";
            List<Map<String, Object>> maps = this.getJdbcTemplate().queryForList(markSQL,workDate+"%");
            //判斷模糊查找的隔離編號(hào)是否存在
            if (maps.size()>0){
                Map<String, Object> m=maps.get(0);
                String mark1=m.get("MARK_NO").toString();
                //取出mark1的后面三位數(shù)
                String str1 = mark1.substring(mark1.length()-3);
                int number1 = Integer.valueOf(str1).intValue();
                if (number1>999)throw new Exception("流水號(hào)超過規(guī)定!");
                int number2 = number1+1;
                //實(shí)例化format,格式為“000”
                DecimalFormat formatCount = new DecimalFormat("000");
                //一般都是將累加的數(shù)字當(dāng)做一些單號(hào)的一部分,format要求string
                String str2 = formatCount.format(number2);
                //再用number2拼接workDate
                String markNo2 =String.join("",workDate,str2);
                jsonObject.put("markNo",markNo2);
                array.add(jsonObject);
            }else if (maps.size()==0){
                //如果maps為零,取markNo1
                jsonObject.put("markNo",markNo1);
                array.add(jsonObject);
            }
            return array;

總結(jié)

到此這篇關(guān)于Java生成遞增流水號(hào)(編號(hào)+時(shí)間+流水號(hào))的文章就介紹到這了,更多相關(guān)Java生成遞增流水號(hào)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中Map的排序問題詳解

    Java中Map的排序問題詳解

    本文給大家分享的是java中的map的按值排序和按鍵排序問題,并通過具體的示例,希望對(duì)大家能有所幫助。
    2016-01-01
  • Java多線程 原子性操作類的使用

    Java多線程 原子性操作類的使用

    這篇文章主要介紹了Java多線程 原子性操作類的使用,在java5以后,我們接觸到了線程原子性操作,也就是在修改時(shí)我們只需要保證它的那個(gè)瞬間是安全的即可,經(jīng)過相應(yīng)的包裝后可以再處理對(duì)象的并發(fā)修改,本文總結(jié)一下Atomic系列的類的使用方法,下面一起進(jìn)入文章了解詳細(xì)內(nèi)容
    2021-10-10
  • 詳解用java描述矩陣求逆的算法

    詳解用java描述矩陣求逆的算法

    這篇文章主要介紹了用java描述矩陣求逆的算法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 換了最新的idea如何將原來舊版本的idea設(shè)置導(dǎo)進(jìn)新的idea中

    換了最新的idea如何將原來舊版本的idea設(shè)置導(dǎo)進(jìn)新的idea中

    這篇文章主要介紹了換了最新的idea如何將原來舊版本的idea設(shè)置導(dǎo)進(jìn)新的idea中,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • 解決IDEA springboot

    解決IDEA springboot"spring-boot-maven-plugin"報(bào)紅問題

    這篇文章主要介紹了解決IDEA springboot"spring-boot-maven-plugin"報(bào)紅問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • mybatis多數(shù)據(jù)源動(dòng)態(tài)切換的完整步驟

    mybatis多數(shù)據(jù)源動(dòng)態(tài)切換的完整步驟

    這篇文章主要給大家介紹了關(guān)于mybatis多數(shù)據(jù)源動(dòng)態(tài)切換的完整步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Lombok之@AllArgsConstructor的使用方式

    Lombok之@AllArgsConstructor的使用方式

    這篇文章主要介紹了Lombok之@AllArgsConstructor的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Spring Boot 各種回滾操作實(shí)戰(zhàn)教程(自動(dòng)回滾、手動(dòng)回滾、部分回滾)

    Spring Boot 各種回滾操作實(shí)戰(zhàn)教程(自動(dòng)回滾、手動(dòng)回滾、部分回滾)

    這篇文章主要介紹了Spring Boot 各種回滾操作實(shí)戰(zhàn)教程(自動(dòng)回滾、手動(dòng)回滾、部分回滾),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • java定時(shí)任務(wù)Timer和TimerTask使用詳解

    java定時(shí)任務(wù)Timer和TimerTask使用詳解

    這篇文章主要為大家詳細(xì)介紹了java定時(shí)任務(wù)Timer和TimerTask使用方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • Java中的字節(jié)流InputStream和OutputStream詳解

    Java中的字節(jié)流InputStream和OutputStream詳解

    這篇文章主要介紹了Java中的字節(jié)流InputStream和OutputStream詳解,繼承自InputStream的流都是用于向程序中輸入數(shù)據(jù),且數(shù)據(jù)的單位為字節(jié)8bit,我們看到的具體的某一些管道,凡是以InputStream結(jié)尾的管道,都是以字節(jié)的形式向我們的程序輸入數(shù)據(jù),需要的朋友可以參考下
    2023-10-10

最新評(píng)論