Spring 在@Builder类中添加可配置变量
我有一个@Builder类,该类中使用的一个变量需要是可配置的。我试过了Spring 在@Builder类中添加可配置变量,spring,lombok,Spring,Lombok,我有一个@Builder类,该类中使用的一个变量需要是可配置的。我试过了 @Value("${string.propertiesFile}") private String stringValue; 我将在application.properties文件中定义的a值插入我的stringValue变量。但是,stringValue始终为空。 如何向@Builder类中添加文本值 非常感谢 据我所知,要使@Value注释起作用,spring需要控制bean的创建过程,以便它能够注入值@Valu
@Value("${string.propertiesFile}")
private String stringValue;
我将在application.properties文件中定义的a值插入我的stringValue
变量。但是,stringValue
始终为空。
如何向@Builder类中添加文本值
非常感谢 据我所知,要使
@Value
注释起作用,spring需要控制bean的创建过程,以便它能够注入值@Value
可用于将值注入Spring托管bean中的字段,并可在字段或构造函数/方法参数级别应用。当使用lombok@Builder
注释时,实际上是在实现Builder模式。因此,spring不能控制bean的创建,因此不能将值直接注入类中
相反,您可以在另一个spring托管类中使用@value
注入值,从该类中使用此生成器,并可能将值传递给生成器,如:
@Service
public SomeServiceClassImpl {
@Value("${string.propertiesFile}")
private String stringValue;
public void someMethod() {
BuilderPatternClass testBuilderPatternClass = BuilderPatternClass.builder()
.name(stringValue)
.id(1)
.build();
}
}