1. 程式人生 > >簡單流水號生成 當天8位 yyyymmdd+ 當天5位00001,遞增。 第二天重置00001

簡單流水號生成 當天8位 yyyymmdd+ 當天5位00001,遞增。 第二天重置00001

    3、生成流水號的程式
   
    /**
   
    * 生成流水號
   
    * @return
   
    */
   
    public String generateSerialNumber() {
   
    //當天的初始化流水號為1
   
    Integer serialNo = 1;
   
    //查詢當天的下一個流水號
   
    String hql = “SELECT max(t.serialNo+1) FROM SerialNumber t WHERE t.generateDate=?”;
   
    String generateDate = DateUtils.formatDate(new Date(), “yyyyMMdd”);
   
    Object obj = session.createQuery(hql)。setParameter(0, generateDate)。uniqueResult();
   
    if(obj != null) {
   
    serialNo = (Integer) obj;
   
    }
   
    //將當前序列號儲存到資料庫
   
    SerialNumber sn = new SerialNumber();
   
    sn.setSerialNo(serialNo);
   
    sn.setGenerateDate(generateDate);
   
    session.save(sn);
   
    //將流水號格式化為 “00001”  5位長度返回
   
    return String.format(“%05d”, serialNo);
   
    }