Как получить доступ к значению в приложении.файл свойств в приложении Spring Boot с основным методом
У меня есть заявление.свойства в моей папке src / main / resources. у него есть одно свойство
username=myname
У меня есть класс
public class A
{
@Value("${username}")
private String username;
public void printUsername()
{
System.out.println(username);
}
}
Когда я вызываю функцию printusername в своем основном методе как follws
public static void main(String[] args)
{
A object=new A();
object.printUsername();
}
Выводит null. пожалуйста, кто-нибудь может сказать мне, что я пропустил?
1 ответ:
Аннотация
@Value
, как@Autowired
, работает только в том случае, если ваш класс создан контейнером 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(); } }
Этот способ должен работать...