青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

life02

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  197 隨筆 :: 3 文章 :: 37 評論 :: 0 Trackbacks
/// <summary>
        /// 根據時間生成流水號
        /// 流水號組成如XS200811050001
        /// XS:銷售
        /// 20081105:日期
        /// 0001:20081105日的第一個訂單
        /// </summary>
        /// <returns></returns>
        private string GetNumberString()
        {
            string orderNumber 
= null;

            
//取得當天的最大訂單號
            DateTime now = DateTime.Now;
            string sql 
= "select max(convert(int,substring(OrderNumber,11,4))) from Orders where OrderNumber like 'XS" + now.Year.ToString("d4"+ now.Month.ToString("d2"+ now.Day.ToString("d2"+ "%'";

            DataSet ds 
= null;
            using (DatabaseOperater2 op 
= new DatabaseOperater2())
            {
                ds 
= op.ExcuteSelectByAdater(sql);
            }

            
if (ds.Tables[0].Rows[0][0] is DBNull)
            {
                
//如果今天還沒有訂單
                orderNumber = "XS" + now.Year.ToString("d4"+ now.Month.ToString("d2"+ now.Day.ToString("d2"+ "0001";
            }
            
else
            {
                
//如果有訂單,則在最大訂單號上+1
                int number = Convert.ToInt32(ds.Tables[0].Rows[0][0])+1;
                orderNumber 
= "XS" + now.Year.ToString("d4"+ now.Month.ToString("d2"+ now.Day.ToString("d2"+ number.ToString("d4");
            }
            
return orderNumber;
        }

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.concurrent.TimeUnit;

/**
   * JAVA版本的自動生成有規則的訂單號(或編號)
   * 生成的格式是: 200908010001 前面幾位為當前的日期,后面五位為系統自增長類型的編號
   * 原理:
   *      1.獲取當前日期格式化值;
   *      2.讀取文件,上次編號的值+1最為當前此次編號的值
   *      (新的一天會重新從1開始編號)
   */

public class Test01 {
   
    public static void main(String[] args) throws InterruptedException {
        SerialNumber serial = new FileEveryDaySerialNumber(5, "EveryDaySerialNumber.dat");
        while(true) {
            System.out.println(serial.getSerialNumber());
            TimeUnit.SECONDS.sleep(2);
        }
    }
}


abstract class SerialNumber {

    public synchronized String getSerialNumber() {
        return process();
    }
    protected abstract String process();
}


abstract class EveryDaySerialNumber extends SerialNumber {
   
    protected final static SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
    protected DecimalFormat df = null;
   
    public EveryDaySerialNumber(int width) {
        if(width < 1) {
            throw new IllegalArgumentException("Parameter length must be great than 1!");
        }
        char[] chs = new char[width];
        for(int i = 0; i < width; i++) {
            chs[i] = '0';
        }
        df = new DecimalFormat(new String(chs));
    }
   
    protected String process() {
        Date date = new Date();
        int n = getOrUpdateNumber(date, 1);
        return format(date) + format(n);
    }
   
    protected String format(Date date) {
        return sdf.format(date);
    }
    protected String format(int num) {
        return df.format(num);
    }
   
    /**
     * 獲得序列號,同時更新持久化存儲中的序列
     * @param current 當前的日期
     * @param start   初始化的序號
     * @return 所獲得新的序列號
     */
    protected abstract int getOrUpdateNumber(Date current, int start);
}


class FileEveryDaySerialNumber extends EveryDaySerialNumber {

    /**
     * 持久化存儲的文件
     */   
    private File file = null;
   
    /**
     * 存儲的分隔符
     */
    private final static String FIELD_SEPARATOR = ",";   

    public FileEveryDaySerialNumber(int width, String filename) {
        super(width);
        file = new File(filename);
    }

    @Override
    protected int getOrUpdateNumber(Date current, int start) {
        String date = format(current);
        int num = start;
        if(file.exists()) {
            List<String> list = FileUtil.readList(file);       
            String[] data = list.get(0).split(FIELD_SEPARATOR);
            if(date.equals(data[0])) {
                num = Integer.parseInt(data[1]);
            }
        }
        FileUtil.rewrite(file, date + FIELD_SEPARATOR + (num + 1));
        return num;
    }       
}


class FileUtil {

    public static void rewrite(File file, String data) {
        BufferedWriter bw = null;
        try {
            bw = new BufferedWriter(new FileWriter(file));
            bw.write(data);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {       
            if(bw != null) {
               try {
                   bw.close();
               } catch(IOException e) {
                   e.printStackTrace();
               }
            }           
        }
    }
   
    public static List<String> readList(File file) {
        BufferedReader br = null;
        List<String> data = new ArrayList<String>();
        try {
            br = new BufferedReader(new FileReader(file));
            for(String str = null; (str = br.readLine()) != null; ) {
                data.add(str);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if(br != null) {
               try {
                   br.close();
               } catch(IOException e) {
                   e.printStackTrace();
               }
            }
        }
        return data;
    }
}

存儲自動編號值的文件如下(文件名: EveryDaySerialNumber.dat)

 

原文地址:http://hi.baidu.com/itlangqun/blog/item/24a490838d4c7fb66c8119fd.html



posted on 2012-02-18 21:06 life02 閱讀(1317) 評論(0)  編輯 收藏 引用 所屬分類: Android開發
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久精品国产v日韩v亚洲 | 亚洲精品日韩在线观看| 亚洲人成欧美中文字幕| 欧美gay视频| 久久大逼视频| 欧美成人dvd在线视频| 久久se精品一区二区| 亚洲黄网站在线观看| 亚洲人成在线观看一区二区| 亚洲女人天堂成人av在线| 亚洲欧洲综合另类| 久久久人人人| 午夜精品短视频| 欧美日韩成人综合在线一区二区 | 欧美中文在线字幕| 亚洲愉拍自拍另类高清精品| 久热re这里精品视频在线6| 久久黄色影院| 国产精品一二三视频| 亚洲国产毛片完整版| 国产在线观看91精品一区| 麻豆成人综合网| 国精品一区二区| 久久国产精品久久精品国产| 亚洲一区二区三区久久| 欧美二区在线| 欧美国产日韩一区二区三区| 狠狠做深爱婷婷久久综合一区 | 国产综合久久| 西瓜成人精品人成网站| 久久成人精品视频| 国产农村妇女精品| 亚洲欧美日本日韩| 亚洲影院免费| 国产精品自在线| 午夜欧美不卡精品aaaaa| 亚洲一区二区动漫| 欧美视频在线视频| 在线综合欧美| 香蕉成人伊视频在线观看| 国产精品欧美日韩一区二区| 亚洲天堂男人| 久久精品国产精品亚洲| 国产伦精品一区二区三区视频孕妇| 亚洲九九九在线观看| 亚洲一区二区三区视频播放| 国产精品久久久对白| 午夜日韩在线| 蜜桃av一区二区| 亚洲精品国产精品国自产观看| 免费在线视频一区| 亚洲理伦在线| 欧美一区二区三区在线播放| 国产一区二区高清视频| 久久青草欧美一区二区三区| 欧美成人精品一区二区| 亚洲国产精品久久| 欧美日韩色婷婷| 香蕉久久国产| 亚洲国产高清aⅴ视频| 亚洲最新在线视频| 国产欧美日韩一区| 免费h精品视频在线播放| 亚洲三级免费电影| 久久精品国产精品亚洲综合 | 欧美区国产区| 午夜精彩国产免费不卡不顿大片| 亚洲一区一卡| 在线观看精品视频| 欧美日韩综合不卡| 久久精品人人做人人综合| 亚洲国语精品自产拍在线观看| 香蕉久久夜色精品国产| 国产精品福利在线观看网址| 亚洲美洲欧洲综合国产一区| 欧美国产高清| 日韩图片一区| 国精品一区二区| 国产午夜亚洲精品羞羞网站| 精品福利免费观看| 一本色道久久综合亚洲精品小说| 国产午夜精品麻豆| 蜜臀av一级做a爰片久久| 99精品视频一区| 在线一区视频| 久久精品视频在线播放| 欧美日韩一区二区三区在线视频| 亚洲另类视频| 欧美在线free| 一本久道综合久久精品| 欧美日韩中国免费专区在线看| 性做久久久久久久免费看| 亚洲人成网站999久久久综合| 久久都是精品| 亚洲视频在线观看一区| 亚洲欧洲日产国产网站| 国产综合一区二区| 国产精品一二三四区| 欧美日韩中文字幕在线| 欧美精品精品一区| 蜜桃av综合| 每日更新成人在线视频| 久久久久国产精品一区| 先锋影音国产精品| 亚洲女ⅴideoshd黑人| 99国产精品久久久久久久久久| 亚洲电影av| 欧美激情国产精品| 猛男gaygay欧美视频| 久热精品视频在线观看| 久久九九免费| 久久精品夜色噜噜亚洲a∨| 先锋影音久久| 欧美精品在线免费播放| 麻豆精品视频| 国内精品一区二区三区| 亚洲一区二区三区在线视频| 日韩一区二区精品葵司在线| 亚洲精品无人区| 日韩亚洲欧美在线观看| 日韩亚洲一区在线播放| 一区二区三区日韩精品| 一本色道久久加勒比88综合| 中文在线资源观看网站视频免费不卡| 日韩亚洲视频在线| 亚洲欧美综合国产精品一区| 亚洲综合大片69999| 99热精品在线| 亚洲欧美中文日韩v在线观看| 欧美一区二区播放| 久久久久久网| 欧美激情中文字幕乱码免费| 欧美三区在线视频| 国产欧美一区二区三区久久| 国产日韩欧美夫妻视频在线观看| 国产亚洲综合性久久久影院| 精品电影在线观看| 亚洲精品在线三区| 亚洲欧美日韩天堂| 狂野欧美性猛交xxxx巴西| 欧美激情精品久久久久久变态| 亚洲黄色精品| 亚洲在线一区| 欧美资源在线观看| 麻豆精品国产91久久久久久| 久久免费偷拍视频| 欧美婷婷久久| 狠狠入ady亚洲精品| 亚洲欧洲一区| 亚洲一区二区三区在线观看视频| 欧美顶级大胆免费视频| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 亚洲国产精品悠悠久久琪琪| 韩国女主播一区| 久久久亚洲成人| 在线亚洲一区二区| 久久一区中文字幕| 一区二区三区高清在线| 欧美欧美天天天天操| 亚洲制服av| 久久最新视频| 午夜精品久久久久影视 | 99在线视频精品| 99精品免费| 亚洲欧美www| 亚洲欧美激情四射在线日| 国产女人18毛片水18精品| 宅男噜噜噜66一区二区 | 毛片基地黄久久久久久天堂| 狠狠久久亚洲欧美专区| 黄色欧美日韩| 久久久精品动漫| 性视频1819p久久| 免费看亚洲片| 国产精品试看| 一区二区三区毛片| 你懂的亚洲视频| 性欧美激情精品| 国产精品白丝黑袜喷水久久久| 在线观看成人av| 久久精品视频网| 亚洲你懂的在线视频| 国产精品ⅴa在线观看h| 日韩亚洲国产欧美| 欧美国产日韩一区二区| 久久精品二区亚洲w码| 国产欧美日韩综合一区在线观看| 亚洲深夜激情| 日韩一区二区精品视频| 欧美日韩不卡合集视频| 亚洲精选大片| 最新热久久免费视频| 免费观看成人| 91久久精品一区| 亚洲第一成人在线| 欧美寡妇偷汉性猛交| 亚洲精品美女久久7777777| 欧美电影免费观看| 欧美超级免费视 在线| 亚洲肉体裸体xxxx137|