gpt4 book ai didi

Spring Boot @Value 属性

转载 作者:IT老高 更新时间:2023-10-28 13:46:50 26 4
gpt4 key购买 nike

我有一个 Spring Boot 应用程序,在其中一个类中,我尝试使用 @Value 从 application.properties 文件中引用一个属性。但是,该属性没有得到解决。我看过类似的帖子并尝试按照建议进行操作,但这没有帮助。类(class)是:

@Configuration
@ComponentScan
@EnableAutoConfiguration
public class PrintProperty {

@Value("${file.directory}")
private String fileDirectory;

public void print() {
System.out.println(fileDirectory);
}
}

我在 application.properties 中有属性 file.directory。我还有其他领域。

最佳答案

我和你有同样的问题。这是我的错误代码。

@Component
public class GetExprsAndEnvId {
@Value("hello")
private String Mysecret;


public GetExprsAndEnvId() {
System.out.println("construct");
}


public void print(){
System.out.println(this.Mysecret);
}


public String getMysecret() {
return Mysecret;
}

public void setMysecret(String mysecret) {
Mysecret = mysecret;
}
}

这样没问题,但是我们需要像这样使用它:

@Autowired
private GetExprsAndEnvId getExprsAndEnvId;

不是这样的:

getExprsAndEnvId = new GetExprsAndEnvId();

这里,使用 @Value 注释的字段为 null,因为 Spring 不知道使用 new 创建的 GetExprsAndEnvId 的副本,也不知道如何在其中注入(inject)值。

关于Spring Boot @Value 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39047333/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com