全国建设网站图片,邢台网站建设费用,2024全民核酸又开始了,wordpress文章打不开使用说明 ⚠️ 所有使用id的业务场景#xff0c;应该在数据库层设置合理的唯一索引 功能 自增id 基于 redis 自增 redis 中的key为#xff1a;[spring.application.name].idGenetate.[key] ⚠️ key 在不同的业务不应该重复使用#xff0c;否则单号无法连续使用 private f…使用说明 ⚠️ 所有使用id的业务场景应该在数据库层设置合理的唯一索引 功能 自增id 基于 redis 自增 redis 中的key为[spring.application.name].idGenetate.[key] ⚠️ key 在不同的业务不应该重复使用否则单号无法连续使用 private final IdGenerateService idGenerateService; // 返回自增数字 long incrId idGenerateService.getIncrId(“A_KEY”); // 返回自增序列号返回格式为key自增id其中数字部分最少6位 String incrSeq idGenerateService.getIncrCode(“B_KEY”, 6);
推荐使用场景
业务明确要求使用自增的场景但是会有直接暴露业务量的风险
混淆id 在生成自增id的基础上将自增结果进行混淆得到最后结果。 混淆算法https://ht-it-2022.yuque.com/gkpo1f/hdkd6d/ggn1wh#vbBgu ● 此算法最大支持的id数量为5497558138885千亿一般情况下够用 ● ⚠️ key 在不同的业务不应该重复使用否则单号无法连续使用 private final IdGenerateService idGenerateService;
// 返回混淆id数字
String confuseId idGenerateService.getConfuseId(A_KEY, ConfuseLength.L_8);
// 返回混淆Seq, 返回格式为key混淆id, 若超过指定长度支持的最大id则会自动增加数字部分长度
String confuseCode idGenerateService.getConfuseCode(A_KEY, ConfuseLength.L_8);推荐使用场景
业务明确要求对自增id不敏感的场景业务要求进行id长度限制
雪花id private final IdGenerateService idGenerateService;
// 雪花id
long snowflakeId idGenerateService.getSnowflakeId();
// 雪花Seq, 返回格式为key雪花id
String snowflakeCode idGenerateService.getSnowflakeCode(A_KEY);推荐使用场景
研发内部使用的id、seq字段无需暴露给业务或业务对此id长度不敏感
字符串混淆id private final IdGenerateService idGenerateService;
// 字符串ID长度不能低于14
String stringId idGenerateService.getStringId(16);推荐使用场景
礼品卡Code其他业务可接受的无序id
如何引入 com.hete.support xx-id-starter
如何配置 配置文件的配置遵循xx-redis-starter的规定。
版本更新
1.0.0
初版提供自增id、混淆id、雪花id的生成工具。