[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-spring-kak-ustroena-konfiguratsiya-v-application-properties-application-yml":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":15,"progress":16,"seo":17},628,"kak-ustroena-konfiguratsiya-v-application-properties-application-yml",14,"spring","Spring","🌱","Как устроена конфигурация в application.properties \u002F application.yml?","Spring Boot автоматически загружает файл `application.properties` (или `application.yml`) из каталога `src\u002Fmain\u002Fresources`.\n\n\u003Cdetails>\n\u003Csummary>Пример application.properties\u003C\u002Fsummary>\n\n```properties\nserver.port=8080\nspring.application.name=my-app\n\n# Подключение к БД\nspring.datasource.url=jdbc:postgresql:\u002F\u002Flocalhost:5432\u002Fmydb\nspring.datasource.username=admin\nspring.datasource.password=${DB_PASSWORD}\n\n# JPA \u002F Hibernate\nspring.jpa.hibernate.ddl-auto=validate\nspring.jpa.show-sql=true\nspring.jpa.open-in-view=false\n\n# Логирование\nlogging.level.root=INFO\nlogging.level.com.example=DEBUG\n```\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>Пример application.yml\u003C\u002Fsummary>\n\n```yaml\nserver:\n  port: 8080\n\nspring:\n  application:\n    name: my-app\n  datasource:\n    url: jdbc:postgresql:\u002F\u002Flocalhost:5432\u002Fmydb\n    username: admin\n    password: ${DB_PASSWORD}\n  jpa:\n    hibernate:\n      ddl-auto: validate\n    show-sql: true\n    open-in-view: false\n```\n\n\u003C\u002Fdetails>\n\n### Приоритет загрузки свойств (от низшего к высшему)\n\n1. Значения по умолчанию (`@Value(\"${prop:default}\")`)\n2. `application.properties` в JAR\n3. `application-{profile}.properties` в JAR\n4. `application.properties` вне JAR\n5. `application-{profile}.properties` вне JAR\n6. Аргументы командной строки (`--server.port=9090`)\n7. Переменные окружения (`SERVER_PORT=9090`)\n\n### Типизированная конфигурация с @ConfigurationProperties\n\n```java\n@Configuration\n@ConfigurationProperties(prefix = \"app.mail\")\n@Validated\npublic class MailProperties {\n    @NotBlank\n    private String host;\n    private int port = 587;\n    private String username;\n    \u002F\u002F геттеры и сеттеры\n}\n```\n\n> **На собеседовании:** важно знать приоритет загрузки свойств и `@ConfigurationProperties`. Частая ошибка -- хранить пароли прямо в `application.properties`, которое попадает в Git. Используйте переменные окружения или Vault.","","junior",[7],[],null,{"title":18,"description":19,"ogTitle":18,"ogDescription":20,"keywords":21,"schemaAnswer":19,"featuredSnippetReady":22},"Как устроена конфигурация в application.properties \u002F applica — Gymterview","Spring Boot автоматически загружает файл `application.properties` (или `application.yml`) из каталога `src\u002Fmain\u002Fresources`.","Spring Boot автоматически загружает файл `application.properties` (или `application.yml`) из каталога `src\u002Fmain\u002Fresource",[7,13],true]