Java for Beginner
719 subscribers
667 photos
174 videos
12 files
1.03K links
Канал от новичков для новичков!
Изучайте Java вместе с нами!
Здесь мы обмениваемся опытом и постоянно изучаем что-то новое!

Наш YouTube канал - https://www.youtube.com/@Java_Beginner-Dev

Наш канал на RUTube - https://rutube.ru/channel/37896292/
Download Telegram
2. Работа с application.yml
Формат YAML (.yml) является альтернативой для application.properties. Он предлагает более читаемый синтаксис и иерархическую структуру для организации настроек. Формат YAML особенно удобен при работе с вложенными конфигурациями.

2.1. Пример application.yml
server:
port: 8081

spring:
datasource:
url: jdbc:mysql://localhost:3306/mydb
username: root
password: root

logging:
level:
org.springframework: INFO


2.2. Чтение свойств из application.yml

Чтение свойств из YAML-файла происходит так же, как и из application.properties, с помощью аннотации @Value или @ConfigurationProperties.

Пример использования аннотации @Value с application.yml:
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@Component
public class MyService {

@Value("${server.port}")
private int serverPort;

public void printPort() {
System.out.println("Порт сервера: " + serverPort);
}
}
Здесь значение параметра server.port из файла application.yml также будет внедрено в поле serverPort.


3. Профили в Spring для разных окружений

Spring поддерживает профили — это механизм, который позволяет задавать разные наборы конфигураций для различных сред (например, для разработки, тестирования, производства). Файлы конфигураций могут быть названы по шаблону application-{profile}.properties или application-{profile}.yml.

3.1. Пример использования профилей

Для активации профиля в Spring можно добавить соответствующий файл, например,
application-dev.properties:
server.port=8080
spring.datasource.url=jdbc:mysql://localhost:3306/devdb


Аналогично можно создать файл application-prod.yml для боевого окружения:
server:
port: 80
spring:
datasource:
url: jdbc:mysql://localhost:3306/proddb


3.2. Активирование профиля


Чтобы указать Spring, какой профиль использовать, можно прописать его в application.properties:
spring.profiles.active=dev


Или через параметры запуска приложения:
java -jar myapp.jar --spring.profiles.active=prod


4. Использование внешних файлов конфигураций

Spring также поддерживает загрузку внешних конфигурационных файлов, которые могут находиться вне пакета приложения. Это удобно, когда вы не хотите включать параметры среды (например, логины и пароли) в артефакт приложения.

Пример запуска с внешним файлом конфигурации:
java -jar myapp.jar --spring.config.location=file:/path/to/external/application.properties


#Java #Training #Spring #yml #yaml
👍1