package com.zxt.basic.util;
import java.util.Random;
import org.drools.util.UUIDGenerator;
/**
*
*
* 类名称:GenerateIdUtil
* 类描述: 主键生成工具类
* @author chenly
* 创建时间:Jul 10, 2012 8:10:43 AM
* 修改人:
* 修改时间:Jul 10, 2012 8:10:43 AM
* 修改备注:
* @version 1.0.0
*
*/
public class IDGeneratorUtil {
/**
* 对象实例
*/
private static IDGeneratorUtil generateIdUtil = new IDGeneratorUtil();
/**
* 随机数实例
*/
private static Random random = new Random(9);
/**
* @author chenly
* getInstance 获得对象实例
* @return GenerateIdUtil
* @exception
* @since 1.0.0
*/
public static IDGeneratorUtil getInstance() {
return generateIdUtil;
}
/**
*
* @author chenly
* getNextId 返回一个当前时间的long类型数字
* @return long
* @exception
* @since 1.0.0
*/
public static synchronized long getNextId() {
return System.currentTimeMillis() + random.nextInt(); //单纯时间同时保存多条记录时会造成主键冲突 modifed by liusp at 20130312
}
/**
*
* @author zhangmin
* randomUUID 取得36个长度的UUID编码
* @return String
* @return String
* @exception
* @since 1.0.0
*/
public static String randomUUID() {
return StringUtil.replace(UUIDGenerator.getInstance()
.generateRandomBasedUUID().toString(), "-", "");
}
}