Я новичок в Java/Spring и попытался прочитать свойства из файла. Это то, что я сделал до сих пор.Чтение свойств из файла в Java Spring
Controller.java
запускает приложение:
import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
@EnableAutoConfiguration
public class Controller {
public static void main(String[] args) throws Exception {
SpringApplication.run(Controller.class, args);
Test test = new Test();
test.doWork();
}
}
Это вызывает метод DoWork() из Test.java
:
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.PropertySource;
@EnableAutoConfiguration
@PropertySource("application.properties")
public class Test {
@Value("${db.password}")
private String dbPassword;
public void doWork() {
System.out.println(dbPassword);
}
}
Я положил некоторые свойства в application.properties
:
db.password=Snap&Fudge!
Файл структура проекта выглядит так:
./pom.xml
./src/main/java/Controller.java
./src/main/java/Test.java
./src/main/resources/application.properties
При запуске приложения, я вижу, что Test.doWork()
запускается, но вместо того, распечатав свойство, она возвращает null
.
Вы видите, что я делаю неправильно?
Вы создаете новый экземпляр теста самостоятельно, вместо использования экземпляра, управляемого весной. –