Get32PrimaryKey

主要是在导入Excel文件时 用到了,我就记下来。
生成Id用到的,就是主键。model.setId(Get32Primarykey.newErpCode());
包:com.xxxxx.common.utils;
jar:
import java.security.NoSuchAlgorithmException;
import java.util.Random;
import java.util.UUID;
import org.apache.commons.lang.RandomStringUtils;

/**获取32位主键
*/
public class Get32Primarykey{
		//随机产生32位16进制字符串-pink
		public static String getRandom32PK(){
				return UUID.randomUUID().toString().replaceAll("-","");//右替左,即去掉”-“
		}
		
		//随机产生32位16进制字符串 ,以时间开头
		public static String getRandom32TimeBeginPK(){
			String timeStr = DateTime.currentDateTime();
			String random32 = getRandom32PK();
			return timeStr+random32.subString(17,random32.length());
		}
		
		//随机生成32位16进制字符串,以时间开头---注释都不改过来?
		public static String getCurTimePK(){
			return DateTime.currentDateTime("yyyyMMddHHmmssSSS")+getRandom6ValiteCode(3);
		}

		//随机生成32位16进制字符串,以时间结尾
		public static String getRandom32TimeEndPK(){
			String timeStr = DateTime.currentDateTime();
			String random32 = getRandom32PK();
			return random32.substring(0,random32.length() - 17)+timeStr;
		}

		//生成随机size位校验码--大写
		public static String getRandomValiteCode(int size){
			if(size <= 0)  size = 6; //默认6位验证码
			String randomStr = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
			Random random = new Random(); //随机种子
			String retStr = ""; //定义返回值
				for(int i = 0 ; i < size ; i++){
					retStr += randomStr.charAt(random.nextInt(36)); //0-35之间任意数,共6次
				}
			return retStr;
		}
		
		//生成随机size位校验码--大小写
		public static String getRandomValiteCode(int size){
			if(size <= 0)  size = 6; //默认6位验证码
			String randomStr = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
			Random random = new Random(); //随机种子
			String retStr = ""; //定义返回值
				for(int i = 0 ; i < size ; i++){
					retStr += randomStr.charAt(random.nextInt(62)); //0-35之间任意数,共6次
				}
			return retStr;
		}
		
		//生成size位随机数
		public static String getRandom6Num(int size){
				if(size <= 0)  size = 6; //默认6位验证码
				String randomStr = "0123456789"; //随机产生的字符串
				Random random = new Random();
				String retStr = "";
				for(int i = 0; i<size; i++){
					retStr + randomStr.charAt(random.nextInt(10));//--字符串的索引是从0开始算的。
				}
				return retStr;	
		}

		//生成企业码-M+6位随机码,即7位随机码
		public static String newErpCode(){
			return "M"+RandomStringUtils.randomAlphanumeric(6);
		}

}//类尾

猜你喜欢

转载自blog.csdn.net/little_dream2018/article/details/89245490
get
32