New file |
| | |
| | | package cn.huge.module.sys.utils; |
| | | |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @title: 公共ID生成工具 |
| | | * @description: 公共ID生成工具 |
| | | * @company: hugeinfo |
| | | * @author: liyj |
| | | * @time: 2021-11-05 16:51:48 |
| | | * @version: 1.0.0 |
| | | */ |
| | | public class SysIdUtils { |
| | | |
| | | /** |
| | | * 时间Id统计常量 |
| | | */ |
| | | private static int COUNT_NUM = 10000; |
| | | |
| | | /** |
| | | * 时间Id统计常量,常量前缀 |
| | | */ |
| | | private static int SIGN_COUNT_NUM = 10000; |
| | | |
| | | /** |
| | | * 时间Id统计常量,常量后缀 |
| | | */ |
| | | private static int COUNT_NUM_SIGN = 10000; |
| | | |
| | | /** |
| | | * 获取时间Id,后四位常量 |
| | | * @return String |
| | | */ |
| | | public synchronized static String getNewTimeId(){ |
| | | String timeId = getNowTime() + (COUNT_NUM++); |
| | | if(COUNT_NUM > 99999){ |
| | | COUNT_NUM = 10000; |
| | | } |
| | | timeId=timeId.substring(2, timeId.length()); |
| | | return timeId; |
| | | } |
| | | |
| | | /** |
| | | * 获取时间Id,常量前缀 |
| | | * @param sign 常量前缀 |
| | | * @return String |
| | | */ |
| | | public synchronized static String getSignNewTimeId(String sign){ |
| | | String timeId = getNowTime() + sign + (SIGN_COUNT_NUM++); |
| | | if(SIGN_COUNT_NUM > 99999){ |
| | | SIGN_COUNT_NUM = 10000; |
| | | } |
| | | timeId=timeId.substring(2, timeId.length()); |
| | | return timeId; |
| | | } |
| | | |
| | | /** |
| | | * 获取带有后缀的时间Id,常量后缀 |
| | | * @param sign 常量后缀 |
| | | * @return String |
| | | */ |
| | | public synchronized static String getNewTimeIdSign(String sign){ |
| | | String timeId = getNowTime() + (COUNT_NUM_SIGN++) + sign; |
| | | if(COUNT_NUM_SIGN > 99999){ |
| | | COUNT_NUM_SIGN = 10000; |
| | | } |
| | | timeId=timeId.substring(2, timeId.length()); |
| | | return timeId; |
| | | } |
| | | |
| | | /** |
| | | * 获取时间Id,后四位常量 |
| | | * @return String |
| | | */ |
| | | public synchronized static String getNowTime(){ |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); |
| | | String nowTime = sdf.format(new Date()); |
| | | return nowTime; |
| | | } |
| | | } |
| | | /** |
| | | * -------------------_ooOoo_------------------- |
| | | * ------------------o8888888o------------------ |
| | | * ------------------88" . "88------------------ |
| | | * ------------------(| -_- |)------------------ |
| | | * ------------------O\ = /O------------------ |
| | | * ---------------____/`---'\____--------------- |
| | | * -------------.' \\| |// `.------------- |
| | | * ------------/ \\||| : |||// \------------ |
| | | * -----------/ _||||| -:- |||||- \----------- |
| | | * -----------| | \\\ - /// | |----------- |
| | | * -----------| \_| ''\---/'' | |----------- |
| | | * -----------\ .-\__ `-` ___/-. /----------- |
| | | * ---------___`. .' /--.--\ `. . __---------- |
| | | * ------."" '< `.___\_<|>_/___.' >'"".------- |
| | | * -----| | : `- \`.;`\ _ /`;.`/ - ` : | |----- |
| | | * -----\ \ `-. \_ __\ /__ _/ .-` / /----- |
| | | * ======`-.____`-.___\_____/___.-`____.-'====== |
| | | * -------------------`=---=' |
| | | * ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| | | * ---------佛祖保佑---hugeinfo---永无BUG---------- |
| | | */ |