Я использую Spring Boot. Я хотел бы написать свою конфигурацию, используя YAML вместо свойств.Spring Boot с использованием Yaml вместо файла свойств
Поскольку я использую spring-boot-starter
, библиотека SnakeYAML уже находится в пути к классам, а SpringApplication автоматически использует версию YAML.
Класс SpringApplication будет автоматически поддерживать YAML в качестве альтернативы свойств всякий раз, когда у вас есть библиотека SnakeYAML на вашем пути к классам.
Проблема в том, что приложение продолжает использовать файл application.properties, и если я его удалю, конфигурация не будет загружена вообще.
Может кто-нибудь мне помочь? это мой главный файл
@SpringBootApplication
public class App {
public static void main(String[] args) throws Exception {
SpringApplication app = new SpringApplication(App.class);
app.setBannerMode(Banner.Mode.OFF);
app.run(args);
}
}
это мой pom.xml
....
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.0.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
application.yml файл только
tasks: 231232
и я пытаюсь чтение свойства с помощью нагнетаемого среды
@Autowired
private Environment environment;
....
log.info(environment.getProperty("tasks"));
Где моя ошибка?
Можете ли вы попытаться создать атрибут типа 'String', который аннотируется с помощью' @Value ("$ {tasks}") 'и проверить его значение? –
все хорошо документировано [boot-features-external-config] (http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html) – Patrick
Не удалось решать задачи-заполнители 'в строковом значении "$ {tasks}" – Panciz