Update ApiBeanConfig.java

cyj
pbvfus8to 8 months ago
parent 0aa1cfb6ad
commit 6a226492d3

@ -16,28 +16,42 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
/** /**
* ApiBeanConfigSpringBeanSpring * ApiBeanConfigSpringSpringBean
* 使@Configuration@AllArgsConstructor * Spring
* SnowflakeBeanID
* * 使 @Configuration SpringSpring
* Bean
* @AllArgsConstructor Lombok便
* SnowflakeBeanSnowflakeID
* ID
* @author lanhai * @author lanhai
*/ */
@Configuration @Configuration
@AllArgsConstructor @AllArgsConstructor
public class ApiBeanConfig { public class ApiBeanConfig {
// 依赖注入ApiConfig实例用于获取配置信息如workerId和datacenterId来初始化Snowflake实例 // 通过Lombok生成的构造函数注入ApiConfig实例ApiConfig实例应该是用于承载和提供配置相关信息的类
// 在这里主要是为了获取其中的workerId和datacenterId两个参数这两个参数对于初始化Snowflake实例至关重要
// 它们在分布式环境下帮助确定Snowflake生成唯一ID的工作节点和数据中心标识从而保证生成的ID在整个分布式系统中是唯一的。
private final ApiConfig apiConfig; private final ApiConfig apiConfig;
/** /**
* snowflakeSnowflakeSpringBean * snowflake @Bean Spring @Bean SpringBean
* SnowflakeIDworkerIddatacenterIdID * SnowflakeSpringBean便Spring
* 使ApiConfigworkerIddatacenterIdSnowflake * ID便使
*
* @return SnowflakeSpringID使 * SnowflakeworkerIddatacenterIdapiConfig
* SnowflakeID
* @return SnowflakeSpring
* ID使
*/ */
@Bean @Bean
public Snowflake snowflake() { public Snowflake snowflake() {
// 使用从ApiConfig中获取的workerId和datacenterId来实例化Snowflake对象确保其在分布式环境下能正确生成唯一ID。
return new Snowflake(apiConfig.getWorkerId(), apiConfig.getDatacenterId()); return new Snowflake(apiConfig.getWorkerId(), apiConfig.getDatacenterId());
} }

Loading…
Cancel
Save