备注:如果有相同的数据,那么就重新生成一个新的数据:
后台代码如下:
public static void main(String[] args) {
String cardNumber=returnCard();//调用下边的方法
public String returnCard(){
String cardNnumer=getCard();//调用生成随机数的方法:这里以6位为例
SuECard eCard = eCardService.selectByCardNum(cardNnumer);//生成的随机数进入数据库中查询一下,看时候有相同的。
if(eCard != null){//如果有相同的数据
return returnCard();//再次调用方法,生成一个随机数
}else{//否则
return cardNnumer;//这个数据我就要
}
}
//生成随机数
public static String getCard(){
Random rand=new Random();//生成随机数
String cardNnumer="";
for(int a=0;a<6;a++){
cardNnumer+=rand.nextInt(10);//生成6位数字
}
return cardNnumer;
}
本文介绍了一种通过递归方式确保生成的随机编号在数据库中唯一的方法。该方法首先生成一个六位数字的随机编号,然后检查该编号是否已存在于数据库中。如果存在,则重复生成过程;如果不存在,则将该编号作为最终结果。
5084





