当前位置: 首页 > news >正文

雪花算法工具类

雪花算法工具类
代码如下:

packageorg.jeecg.common.util;importcn.hutool.core.lang.Snowflake;importcn.hutool.core.net.NetUtil;importcn.hutool.core.util.IdUtil;importorg.apache.commons.lang3.StringUtils;/** * @Description:雪花算法生成分布式id,需要引入hutooljar包 * @Author: jeecg-boot * @Date: 2025-09-03 * @Version: V1.0 */publicclassSnowflakeUtil{// 终端IDprivatestaticfinalLongWORKER_ID=resolveWorkerId();// 数据中心IDprivatestaticfinalLongDATA_CENTER_ID=resolveDataCenterId();// 单例 Snowflake 实例(线程安全)privatestaticfinalSnowflakeSNOWFLAKE=newSnowflake(WORKER_ID,DATA_CENTER_ID,true);/** * 获取雪花ID */publicstaticsynchronizedStringgetSnowflake(){returnSNOWFLAKE.nextIdStr();//return IdUtil.getSnowflake(WORKER_ID,DATA_CENTER_ID).nextIdStr();}/** * 根据 Pod Name(HOSTNAME) 生成 WorkerId(保证同 Node 下 Pod 不同) */privatestaticLongresolveWorkerId(){Longid=null;try{// 使用 IP 地址计算Stringip=NetUtil.getLocalhostStr();returnLong.parseLong(ip.split("\\.")[3])&0x1F;}catch(Exceptione){id=0L;}returnid;}/** * 根据 Node IP 生成 DataCenterId(保证同一物理机一样) */privatestaticLongresolveDataCenterId(){Longid=null;try{// 使用 IP 地址计算Stringip=NetUtil.getLocalhostStr();id=(long)(ip.hashCode()&0x1F);}catch(Exceptione){id=0L;}returnid;}//测试publicstaticvoidmain(String[]args){Stringuuid=getSnowflake();System.out.println(uuid);}}
http://www.jsqmd.com/news/868337/

相关文章:

  • 别再死记硬背了!用可视化调试工具SR_DebugHelper,5分钟看懂饥荒Mod的Entity结构
  • C++ Kafka实战:用librdkafka手写一个带自定义分区和事件回调的生产者
  • 2026年多门店商城小程序怎么做
  • 拼三角【牛客tracker 每日一题】
  • 懂复盘的人,职场成长速度快别人十倍
  • 手把手教你用Mosquitto + PowerShell玩转MQTT消息订阅与发布(实战测试篇)
  • Vue 3 + 高德地图实战:打造全能定位与搜索组件
  • DocKit v1.0 发布 — AI 原生 NoSQL 桌面客户端,支持 Elasticsearch、OpenSearch 和 DynamoDB,本地优先,Apache 2.0 开源
  • 2026年靠谱的进口合金刀片/东莞合金刀片多家厂家对比分析 - 行业平台推荐
  • AMBA CHI协议SACTIVE信号机制与低功耗设计解析
  • 2026年商家怎么弄小程序店铺
  • 不止于Windows:用QtService源码打造跨平台(Windows/Linux)守护进程的实践指南
  • WordPress与PageAdmin CMS深度技术对比:从架构到国产化合规的全维度分析
  • 基于SpringBoot2+vue2的健身房管理系统
  • python社区技术论坛交流平台
  • 排查GD32串口幽灵数据:从MAX490电路设计到Keil下载报错的完整避坑指南
  • 保姆级教程:DBeaver社区版23.3.5安装与国内镜像配置,彻底告别驱动下载失败
  • 别再只会用默认库了!用OrCAD Capture CIS高效创建Homogeneous与Heterogeneous复合器件
  • 手把手教你配置海康NVR的GB28181国标编号,彻底告别‘通道数0’问题
  • 专业的监测平台哪家好
  • 告别开发依赖!SAP顾问必学的SQ01/SQ02/SQ03实战:5步搞定自定义报表
  • AI时代什么建站软件功能强大?从GEO流量重构看CMS的智慧进化
  • 2026年4月技术好的展台搭建公司口碑推荐,展馆/博物馆展馆/展台展厅搭建/展台促销台搭建,展台搭建全包服务哪个好 - 品牌推荐师
  • 【编号120】珠江三角洲城市群区域开发密度数据
  • 众汇量化以多策略融合与智能投研打造高质量投资体系
  • 从Polar靶场“中等”难度题,聊聊新手CTFer最容易踩的5个Web安全坑
  • 【c++面向对象编程】第44篇:typename与class的区别,依赖类型名与template消除歧义
  • 避开RK3566以太网PHY调试的那些‘坑’:从硬件C15到DTS配置的完整避坑指南
  • 从分子设计到社交网络:聊聊DiGress在图生成领域的实战潜力与当前局限
  • BE-ToF技术:突破传统飞行时间成像的深度感知新方案