java生成自增編號數(shù)字的問題
java生成自增編號數(shù)字
最近有業(yè)務需求,編號自增。
1、查詢數(shù)據(jù)最大編號,該字段為字符串
SELECT max(no_value+0) FROM `jm_xx`
2、編號+1,遞增后按格式補齊
public String getOldNum(){
? ? ? ? String oldNum ="00000001";
? ? ? ? String maxOldNum = jmDocMapper.findMaxOldNum();
? ? ? ? if(null !=maxOldNum){
? ? ? ? ? ? int i = Integer.parseInt(maxOldNum)+1;
? ? ? ? ? ? //%nd 輸出的整型寬度至少為n位,右對齊,%8d即寬度至少為8位,位數(shù)大于8則輸出實際位數(shù),0表示用0補齊
? ? ? ? ? ? oldNum = String.format("%08d", i);
? ? ? ? }
? ? return oldNum;
}java生成一定規(guī)則遞增編號
項目需求中有時需要生成一定規(guī)則遞增編號。
例如生成設備編號:設備類型+五位編號(從1開始,不夠前補0),也就是SYXH000001/SYXH00002/SDOI00001類似這樣。
那么如何處理000001自增1變?yōu)?00002呢?
實現(xiàn)代碼:
package com.lyf.test;
public class Test2 {
?? ?
?? ?/**
?? ? * 生成規(guī)則設備編號:設備類型+五位編號(從1開始,不夠前補0)
?? ? *?
?? ? * @param equipmentType
?? ? * ?? ??? ??? ??? ?設備類型
?? ? * @param equipmentNo
?? ? * ?? ??? ??? ??? ?最新設備編號
?? ? * @return
?? ? */
?? ?public static String getNewEquipmentNo(String equipmentType, String equipmentNo){
?? ??? ?String newEquipmentNo = equipmentType + "00001";
?? ??? ?
?? ??? ?if(equipmentNo != null && !equipmentNo.isEmpty()){
?? ??? ??? ?int no = Integer.parseInt(equipmentNo);
?? ??? ??? ?int newEquipment = ++no;
?? ??? ??? ?newEquipmentNo = String.format(equipmentType + "%05d", newEquipment);
?? ??? ?}
?? ??? ?
?? ??? ?return newEquipmentNo;
?? ?}
?? ?public static void main(String[] args) {
?? ??? ?String equipmentNo = Test2.getNewEquipmentNo("SYXH", "00032");
?? ??? ?System.out.println("生成設備編號:" + equipmentNo);
?? ?}
}運行結(jié)果:
生成設備編號:SYXH00033
從上面代碼中可以看到,首先我們默認了一個初始設備編號,當傳入方法的最新設備編號為null或是空時將使用。
如果傳入了數(shù)據(jù)庫中最新設備編號,將首先使用Integer的parseInt()方法返回十進制整數(shù),這樣就可以對其自增1。
最后通過String的format()方法進行字符串格式化返回就可以了。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
解決報java.lang.AssertionError錯誤的問題
這篇文章主要介紹了解決報java.lang.AssertionError錯誤的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05
Spring Data JPA 實現(xiàn)多表關聯(lián)查詢的示例代碼
多表查詢在spring data jpa中有兩種實現(xiàn)方式,第一種是利用hibernate的級聯(lián)查詢來實現(xiàn),第二種是創(chuàng)建一個結(jié)果集的接口來接收連表查詢后的結(jié)果,這里介紹第二種方式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-07-07
使用IDEA創(chuàng)建Java Web項目并部署訪問的圖文教程
本文通過圖文并茂的形式給大家介紹了使用IDEA創(chuàng)建Java Web項目并部署訪問的教程,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2018-08-08
SpringBoot多controller添加URL前綴的實現(xiàn)方法
這篇文章主要介紹了SpringBoot多controller添加URL前綴的方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-02-02

