【java实现点卡生成】

点卡主要有2部分:卡号和密码。卡号一般由数字组成,密码就不多说了。

  java中随机数很强大,大家可以自己查。卡号生成使用java中随机数,密码使用uuid,密码可以自己再加点东西之类的。下面是完整代码:

  public class TimeCard {

  private static String getFixLenthString(int strLength) {

  Random rm = new Random();

  // 获得随机数

  double pross = (1 + rm.nextDouble()) * Math.pow(10, strLength);

  // 将获得的获得随机数转化为字符串

  String fixLenthString = String.valueOf(pross);

  // 返回固定的长度的随机数  ,如果随机数前面有“.”,把2调大。

  return fixLenthString.substring(2, strLength + 1);

  }

  private static String getUUID(){

  String s = UUID.randomUUID().toString();

  //去掉“-”符号

  return s.substring(0,8)+s.substring(9,13)+s.substring(14,18)+s.substring(19,23)+s.substring(24);

  }

  /**

  * 卡号N位随机数

  * 卡密用uuid,不够再加几位随机数

  * 存入数据库

  * @param args

  */

  public static void main(String[] args) {

  // TODO Auto-generated method stub

  int num = 10;//点卡数目

  ITimeCard tc = new TimeCardDAO();

  for(int i = 0;i<num;i++){

  tc.addTimeCard(getFixLenthString(18), getUUID());//给数据库添加记录

  try {

  Thread.sleep(5);

  } catch (InterruptedException e) {

  e.printStackTrace();

  }

  System.out.println(getFixLenthString(18));

  System.out.println(getUUID());

  }

  }

  }

posted on 2013-09-07 09:38  潇洒kman  阅读(269)  评论(0编辑  收藏  举报