生成时间加流水号的编码

最近要做一个自动生成单号的功能,单号是唯一的,格式为“201604140001”这样的,我便想到了把id放在单号里面作为唯一标识。所以以下代码的参数sno为插入数据时的id,具体是这样得到的:select  xl.nextval from dual,其中xl是序列。怎么创建序列就不介绍了,百度一下吧。当然查出来的id要以nextval为字段取出来赋给变量,再把变量作为参数传进去。

private String SERIAL_NUMBER = "XXXX";

  public String generaterNextNumber(String sno) {
        String id = null;
        Date date = new Date();
        SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
        id=formatter.format(date);
        int count=SERIAL_NUMBER.length();
        int snolength=sno.length();
        for(int i=0;i         {
        id+="0";
        }
        id+=sno;
        return id;
    }

你可能感兴趣的:(java)