Package Test;import Java.text.dateformat;import Java.text.simpledateformat;import java.util.calendar;import Java.util.date;import java.util.hashmap;import java.util.map;/* * Generate serial number * @author Huifeidexiaobenzhu * @time 2014-11-27 * /public class Createseriano {private static map<string,string> map=new hashmap<string,string> ();p rivate static string statnum= "000001";/** * Get Month Day * @return */public String getTime () {Calendar cal=calendar.getinstance (); Cal.settime (New Date ()));D Ateformat df=new simpledateformat ("YyyyMMdd"); return Df.format (Cal.gettime ());} /** * Determine if the serial number is to the last * @param s * @return */public string Getlastsixnum (String s) {string Rs=s;int i=integer.parseint (RS); int f= (int) (Math.random () *100000) i++;rs= "" +f;for (int j=rs.length (); j<6;j++) {rs= "0" +RS;} return RS;} /** * Generates non-duplicated number yoke * @return */public synchronized string Getnum () {string yearamon=gettime (); String Last6num=map.get (Yearamon), if (last6num==null) {map.put (Yearamon, statnum);} Else{map.put (Yearamon, Getlastsixnum (lAst6num));} Return Yearamon+map.get (Yearamon);} /** * Main Test * @param args */public static void main (string[] args) {Createseriano t=new Createseriano (); for (int i=0;i< 10;i++) {System.out.println (T.getnum ());}}}
Random generation of serial numbers