java編號生成
❶ 求java自動生成一個序列號的方法,急急急...
package com.test4;
public class Test7 {
public static void main(String[] args) {
System.out.println(getNum("20100505",3));
}
//假設資料庫里有個20100505005的編號
private static String getNum(String firstPart, int len) {
//調用資料庫獲得20100505005這個編號
String oldNum = "20100505005";
int num = Integer.parseInt(oldNum.replace(firstPart,""));
String numStr = ++num +"";
int length = numStr.length();
for (int i = length; i < len; i++) {
numStr = "0"+numStr;
}
return firstPart + numStr;
}
}
❷ JAVA如何實現利用固定的編碼加兩位數字自動生成編號
下面兩種方式都可以
NumberFormat format = NumberFormat.getInstance();
format.setMinimumIntegerDigits(6);
int i = 10;
String result = 「xxxx」 + format.format(i).replace(",", "")
System.out.println( result );
int i = 10;
String result = 「xxxx」 + String.format("%06d", i);
System.out.println(result);
❸ java如何對一個字元串生成唯一的編碼
JAVA類庫中可以使用UUID方法,來生成唯一的數字的一串數字編號,也就是訂單號。
UUID.randomUUID().toString().replaceAll("-", "");通過上述方法就可以返回一串數字字元串。
❹ java怎樣自動生成流水號
方法一:
不用資料庫的話弄個static個變數,自己設置個synchronized
示例:
importjava.text.DecimalFormat;
importjava.text.SimpleDateFormat;
importjava.util.Date;
publicclassPrimaryGenerater{
_NUMBER="XXXX";//流水號格式
=null;
privatePrimaryGenerater(){
}
/**
*取得PrimaryGenerater的單例實現
*
*@return
*/
(){
if(primaryGenerater==null){
synchronized(PrimaryGenerater.class){
if(primaryGenerater==null){
primaryGenerater=newPrimaryGenerater();
}
}
}
returnprimaryGenerater;
}
/**
*生成下一個編號
*/
(Stringsno){
Stringid=null;
Datedate=newDate();
SimpleDateFormatformatter=newSimpleDateFormat("yyyyMMdd");
if(sno==null){
id=formatter.format(date)+"0001";
}else{
intcount=SERIAL_NUMBER.length();
StringBuildersb=newStringBuilder();
for(inti=0;i<count;i++){
sb.append("0");
}
DecimalFormatdf=newDecimalFormat("0000");
id=formatter.format(date)
+df.format(1+Integer.parseInt(sno.substring(8,12)));
}
returnid;
}
}
方法二:
可以在資料庫新建序列,再新建一個存儲過程式控制制序列,返回序列值,比如sqlserver用identity,oracle用序列,存儲過程可以加鎖,當達到999999的時候重置序列,通過代碼調用存儲過程獲得返回值。
2、全局變數。通過方法獲取下一個值,方法同步。
❺ java自動生成編號
private static int m=1;//全局靜態變數,(必須static修飾)每調用一次方法自增1
public String add(){
addin(m);
return "addTiao";
}
public void addin(int a){
String str1="A";
Date date=new Date();
String str2=new SimpleDateFormat("yyyyMMdd"). format(date);//自動生成日期
int datee=Integer.parseInt(str2);
inlist=instockService.getInListDown();//按降冪排序
instockEntity=(InstockEntity) inlist.get(0);
String ss=instockEntity.getInstock_number();//得到最大日期
if(ss!=null){
String riqi=ss.substring(1, 9);
int riqi1=Integer.parseInt(riqi);
if(datee>riqi1){
a=1;//如果日期變大則初始化訂單號
}
}
String str3=null;
if(a>=0&&a<=9){
str3="00"+String.valueOf(a);
}else if(a>=10&&a<=99){
str3="0"+String.valueOf(a);
}else if(a>=100&&a<=999){
str3=String.valueOf(a);
}
String instock_number=str1+str2+str3;
instockEntity.setInstock_number(instock_number);
instockService.add(instockEntity);
m=a+1;
}
❻ java中自動生成有規律的編號
public class Main {
private static long n = 1;
public static void main(String[] args) {
System.out.println(test(n));
System.out.println(test(n));
}
public static long test(long l) {
String str = new SimpleDateFormat("yyyyMM")
.format(new java.util.Date());
long m = Long.parseLong((str)) * 10000;
long ret = m + l;
n = l + 1;
return ret;
}
}
❼ java怎麼生成一個唯一的只有數字的訂單號
JAVA類庫中可以使用UUID方法,來生成唯一的數字的一串數字編號,也就是訂單號。
UUID.randomUUID().toString().replaceAll("-", "");通過上述方法就可以返回一串數字字元串。
❽ java如何根據日期自動編號
要根據時間生成編號,首先要知道編號的方式,比如只是把時間中的符號去掉可以使用SimpleDateFromat這個類
//其實有很多情況都可以用它解決,只需要改其中的格式
//大概是這樣,手寫的代碼
Stringbh=newSimpleDateFormate("yyyyMMddHHmmss").format(newDate());
//得到201806061331
如果需要復雜點的,可以使用Calendar這個類,獲取需要編號的數據進行編號
Calendarc=Calendar.getInstance();
c.setTime(newDate());
//通過get方法獲取具體的值,年、月、日、時、分、秒、星期等
c.get(Calendar.HOUR_OF_DAY);//獲得小時,其他的常量可以在官方API查找,或者網路【Calendar.java常量】
❾ java自動生成訂單編號問題
為了30分:
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test {
public static final String PREFIX = "DD";
private static long code;
public static void main(String[] args) {
System.out.println(Test.nextCode());
System.out.println(Test.nextCode());
System.out.println(Test.nextCode());
}
public static synchronized String nextCode() {
code++;
String str = new SimpleDateFormat("yyyyMM").format(new Date());
long m = Long.parseLong((str)) * 10000;
m += code;
return PREFIX + m;
}
}
❿ 想用java自動生成貨品編號的代碼,生成規則如下:
那就傳分類的參數,去生成唄,,,,,從數據中確定下一個編號
~
~
~