使用@Value注解注入单个属性
Using @Value annotation to Inject single property
我有一个 class,我只希望从属性文件中注入一个 属性。
class 是这样的:
@Getter
public class BatchContext {
private final String city;
private final String channel;
@Value("${table.url: https://www.someurl.com}")
private final String url;
@Builder
public BatchContext(String city, String channel, @Value("${table.url:https://www.someurl.com}") String url) {
this.city = city;
this.channel = channel;
this.url = url;
}
}
我只想将国家和段传递给 BatchContext 并想从属性文件加载 url 但 url 结果为空,什么是实现此目的的最佳方法。
Madu,看来你的问题只与你的class有关。
它不是 Spring 上下文的 Bean,那么你的 @Value 不能被 Spring.
注入
尝试将您的 class 设置为由 Spring 管理的对象,例如@Component:
@Component
public class BatchContext {...
}
我有一个 class,我只希望从属性文件中注入一个 属性。 class 是这样的:
@Getter
public class BatchContext {
private final String city;
private final String channel;
@Value("${table.url: https://www.someurl.com}")
private final String url;
@Builder
public BatchContext(String city, String channel, @Value("${table.url:https://www.someurl.com}") String url) {
this.city = city;
this.channel = channel;
this.url = url;
}
}
我只想将国家和段传递给 BatchContext 并想从属性文件加载 url 但 url 结果为空,什么是实现此目的的最佳方法。
Madu,看来你的问题只与你的class有关。 它不是 Spring 上下文的 Bean,那么你的 @Value 不能被 Spring.
注入尝试将您的 class 设置为由 Spring 管理的对象,例如@Component:
@Component
public class BatchContext {...
}