封装一个流水号ID生成器:id-spring-boot-starter
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                封装一个流水号ID生成器:id-spring-boot-starter
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                文章轉載自https://www.codesheep.cn/2019/09/04/id-springbt-starter/
概述
ID號生成器(或:全局唯一ID生成器)是服務端系統的基礎設施,而且ID號這個東西基本搞后端開發的程序員天天都要接觸。而關于ID生成的算法現在業界首屈一指的當屬Snowflake雪花算法。
UidGenerator正是百度開源的一款基于Snowflake雪花算法實現的高性能唯一ID生成器。在本號前文中已經詳細使用過UidGenerator,但使用過程還是比較繁雜,還需要自己去引UidGenerator組件的源碼,感覺有點不方便。為此本文基于UidGenerator,再來封裝一套更利于Spring Boot項目使用的ID號生成組件,命名為id-spring-boot-starter,一看名字就知道是開箱即用的。
用法
- 導入SQL腳本
這一步肯定是省不掉,畢竟UidGenerator需要數據庫支持
- pom中加入依賴
- 配置數據庫連接
還是因為UidGenerator需要數據庫支持
- 修改Spring Boot主類
Spring Boot應用主類上加上mybatis注解即可:
@MapperScan({"com.baidu.fsg.uid.worker.dao"})- 代碼使用方式
怎么樣,用法超級簡單吧:
- 運行效果
demo源碼在此,需要請自提:
- https://github.com/hansonwang99/Spring-Boot-In-Action/tree/master/test-id-spring-boot-starter
id-spring-boot-starter源碼下載
需要組件id-spring-boot-starter源碼進行自定制的,可以去github上自行下載源代碼,地址在此:
- https://github.com/hansonwang99/Spring-Boot-In-Action/tree/master/id-spring-boot-starter
幾個注意點:
- 由于UidGenerator需要數據庫支持,因此使用前一定要導數據表,并且要配置MapperScan
- 需要高度定制UidGenerator組件詳情的,可以自行修改id-spring-boot-starter內部的cached-uid-spring.xml文件,然后重新打jar包
- 由于ID號生成一般屬于系統基礎服務,因此可以獨立成一個微服務,供其他微服務調用
總結
以上是生活随笔為你收集整理的封装一个流水号ID生成器:id-spring-boot-starter的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: Windows在当前目录快速打开cmd的
- 下一篇: Spring Boot整合Mybatis
