熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

簡單流水號生成

2013-11-23 18:58:33  來源: Java核心技術 

  項目中有這樣的需求每天從開始生成位的流水號比如……又從開始而且系統重啟後依然需要保持流水性重啟前是那麼重啟後需要從開始
   
    選擇的一個方案就是將流水號保存到數據庫
   
流水號實體
   
    /** * 流水號 * @author Luxh * */public class SerialNumber {
   
    private String id;
   
    /**
   
    * 流水號
   
    */
   
    private Integer serialNo;
   
    /**
   
    * 生成日期(格式yyyyMMdd)
   
    */
   
    private String generateDate;
   
    //getter/setter方法
   
    //…}
   
流水號實體對應的數據表


  

  生成流水號的程序
   
    /**
   
    * 生成流水號
   
    * @return
   
    */
   
    public String generateSerialNumber() {
   
    //當天的初始化流水號為
   
    Integer serialNo = ;
   
    //查詢當天的下一個流水號
   
    String hql = SELECT max(tserialNo+) FROM SerialNumber t WHERE tgenerateDate=?;
   
    String generateDate = DateUtilsformatDate(new Date() yyyyMMdd
   
    Object obj = sessioncreateQuery(hql)setParameter( generateDate)uniqueResult()
   
    if(obj != null) {
   
    serialNo = (Integer) obj;
   
    }
   
    //將當前序列號保存到數據庫
   
    SerialNumber sn = new SerialNumber()
   
    snsetSerialNo(serialNo)
   
    snsetGenerateDate(generateDate)
   
    sessionsave(sn)
   
    //將流水號格式化為   位長度返回
   
    return Stringformat(%d serialNo)
   
    }


From:http://tw.wingwit.com/Article/program/Java/hx/201311/26061.html
  • 上一篇文章:

  • 下一篇文章:
  • Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.