JAVA 用时间生成主键ID


/** 
      *   生成主键(19位数字)
      *  主键生成方式,年月日时分秒毫秒的时间戳 例如:1810311557430000845
      */ 
    public static synchronized Long getUUIDTOLongNew(){
        try {
            TimeUnit.NANOSECONDS.sleep(1000000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        String msg=""; 
        Date date = new Date(); 
        SimpleDateFormat sdf = new SimpleDateFormat("yyMMddHHmmssSSSSSSS"); //1810311557430000845
//        msg = sdf.format(date).substring(2); 
        return Long.parseLong(sdf.format(date));
    }

 /** 
* 生成主键(17位数字)
* 主键生成方式,年月日时分秒毫秒的时间戳 例如:180910094204299
*/
public static synchronized Long getUUIDTOLong(){
try {
Thread.sleep(1);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String msg="";
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
msg = sdf.format(date).substring(2);
return Long.parseLong(msg);
}
 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM