reflector(distributed-id-generator): 重构分布式ID生成器配置与数据源管理

- 引入 LeafProperties 配置类统一管理ID生成器配置
- 添加 LeafDataSourceConfiguration 配置数据源
- 移除旧的 Constants 类和 leaf.properties 文件
- 更新 SegmentService 和 SnowflakeService 初始化逻辑
- 修改 SnowflakeZookeeperHolder 构造函数增加 leafName 参数- 升级 MyBatis 到 MyBatis-Plus 并更新相关依赖版本
- 使用 Spring Boot 注解替换手动数据源创建
- 优化 DAO 层实现使用 Spring 注解和事务管理
- 更新应用配置文件支持多环境配置
- 添加 caffeine、commons-io、perf4j、curator-recipes 等依赖版本管理
This commit is contained in:
Hanserwei
2025-10-09 09:50:13 +08:00
parent 31b06fe32d
commit 28ab543d57
21 changed files with 364 additions and 308 deletions

View File

@@ -16,6 +16,10 @@
<module>han-note-gateway</module>
<module>han-note-oss</module>
<module>han-note-user</module>
<module>han-note-kv</module>
<module>han-note-distributed-id-generator</module>
<module>han-note-note</module>
<module>han-note-note/han-note-note-biz</module>
</modules>
<properties>
@@ -51,6 +55,11 @@
<jaxb-runtime.version>2.3.3</jaxb-runtime.version>
<cos-api.version>5.6.227</cos-api.version>
<feign-form.version>3.8.0</feign-form.version>
<caffeine.version>3.2.2</caffeine.version>
<common-io.version>2.20.0</common-io.version>
<perf4j.version>0.9.16</perf4j.version>
<curator-recipes.version>5.9.0</curator-recipes.version>
<zookeeper.version>3.9.4</zookeeper.version>
</properties>
<dependencyManagement>
<dependencies>
@@ -215,12 +224,47 @@
<artifactId>feign-form</artifactId>
<version>${feign-form.version}</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>${common-io.version}</version>
</dependency>
<dependency>
<groupId>org.perf4j</groupId>
<artifactId>perf4j</artifactId>
<version>${perf4j.version}</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-recipes</artifactId>
<version>${curator-recipes.version}</version>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>${zookeeper.version}</version>
</dependency>
<dependency>
<groupId>com.hanserwei</groupId>
<artifactId>han-note-user-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.hanserwei</groupId>
<artifactId>han-note-kv-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.hanserwei</groupId>
<artifactId>han-note-distributed-id-generator-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<!-- caffeine本地缓存-->
<dependency>
<groupId>com.github.ben-manes.caffeine</groupId>
<artifactId>caffeine</artifactId>
<version>${caffeine.version}</version>
</dependency>
</dependencies>
</dependencyManagement>