如何使用main方法访问Spring Boot应用程序中application.properties文件中的值
作者:互联网
我在src / main / resources文件夹中有一个application.properties.
它有一个属性
username=myname
我上课了
public class A
{
@Value("${username}")
private String username;
public void printUsername()
{
System.out.println(username);
}
}
当我在我的main方法中调用printusername函数时,如下所示
public static void main(String[] args)
{
A object=new A();
object.printUsername();
}
它打印为null.
请有人告诉我我错过了什么?
解决方法:
@Autowired的@Value注释仅在您的类由Spring IoC容器实例化时才有效.
尝试使用@Component注释来注释您的类:
@Component
public class A
{
@Value("${username}")
private String username;
public void printUsername()
{
System.out.println(username);
}
}
然后在你的runnable类中:
public class RunnableClass {
private static A object;
@Autowired
public void setA(A object){
RunnableClass.object = object;
}
public static void main(String[] args)
{
object.printUsername();
}
}
这种方式应该工作……
标签:java,spring,spring-boot-2,properties-file 来源: https://codeday.me/bug/20190608/1196785.html