请教:java生成物流单号
生成方式:YD+当天日期+编号 (编号:后面三位自增长001到999)
eg:  YD20100726001
     YD20100726002
     YD20100726003
     YD20100726004
     ............
     YD20100726010
     YD20100726011
     YD20100726012
     YD20100726013
     YD20100726014
     .......
     YD20100726100
     YD20100726101
     YD20100726102

解决方案 »

  1.   

    如果超过999啥办?
    使用SimpleDateFormat类将日期格式成字符串就可以了
      

  2.   

    存储过程生成不错噢,给楼主个思路,先提取日期与当前时间做比较相同的结果查出来,然后再判断最大的那个单号,再给他+1如果是个位变成00x,十位变成0xx,百位变成xxx,然后再拼接就OK了。
      

  3.   

    java.text.SimpleDateFormat sf=new java.text.SimpleDateFormat("yyyyMMdd");
                  将数据库中最大的一条记录取出来,假如是:YD20100726001
    String yd="YD20100726001";
    String lastNumber=yd.substring(yd.length()-3);
    String newNumber=String.valueOf(Integer.parseInt(lastNumber)+1);
    if(newNumber.length()==1)
       newNumber="00"+newNumber;
    if(newNumber.length()==2)
       newNumber="0"+newNumber; String temp="YD"+sf.format(new Date())+newNumber;
      

  4.   

    SimpleDateFormat("yyyy-MM-dd hh:mm:sss"); 时间字符串
    时间字符串.replaceall("-","").replaceall(":",""); 把时间字符串格式了
    然后
    成物流单号=YD+时间字符串
    就OK乐