2015-10-24 1 views
1

У меня есть рабочее приложение Spring Boot, которое подключается к базе данных Postgres. У меня есть проект, созданный с файлом application.properties, но хотел бы перейти к файлу application.yml. Однако, когда я делаю коммутатор, мои приложения выходят из строя, пытаясь подключиться к db.База данных application.yml для Spring boot from applications.properties

Оригинальные applications.properties файла:

spring.jpa.database=POSTGRESQL 
spring.datasource.platform=postgres 
spring.jpa.show-sql=true 
spring.jpa.hibernate.ddl-auto=create-drop 
spring.database.driverClassName=org.postgresql.Driver 
spring.datasource.url=jdbc:postgresql://localhost:5432/mydb 
spring.datasource.username=foo 
spring.datasource.password=bar 

И вот что у меня до сих пор в файле application.yml:

spring.jpa: 
    database: POSTGRESQL 
    hibernate.ddl-auto: create-drop 
    show-sql: true 

spring.datasource: 
    platform: postgres 
    driverClassName: org.postgresql.Driver 
    url: jdbc:postgresql://localhost:5432/mydb 
    username: foo 
    password: bar 

я упускаю что-то в переводе между типами файлов ?

ответ

8

Вы должны относиться к каждому . символ в именах свойств в качестве уровней в файле yaml:

spring: 
    jpa: 
    database: POSTGRESQL 
    show-sql: true 
    hibernate: 
     ddl-auto: create-drop 
    datasource: 
    platform: postgres 
    url: jdbc:postgresql://localhost:5432/mydb 
    username: foo 
    password: bar 
    driverClassName: org.postgresql.Driver 

EDIT: редактирование было предложено, спасибо за это. Свойство driverClassName на самом деле должно быть ниже spring.datasource. Однако целью этого ответа было показать, как файл properties преобразуется в формат yaml. Поэтому я изменил свойство driverClassName на правильный путь, который не является частью преобразования от properties до yaml.

Смежные вопросы