О конфигурации мультисредового переключения dev, sit, uat, prod
Недавно мой друг и Ян Ян говорили о проблеме настройки мультисреды.Большинство туториалов в интернете скопированы, а многие статьи просто бесполезны.) Ян Ян из добра (фэн) вернулся и написал демо для парень, так вот статья, просто чтобы объяснить вам о мультисредовой конфигурации Springboot
Время науки:
Что такое dev, sit, uat, prod?
Прежде всего, пусть новые друзья узнают значение науки
dev — локальная среда разработки;
сит-тестовая среда;
уат -- квазипроизводственная среда;
прод — производственная среда;
Что такое переключение конфигурации в нескольких средах и почему его следует внедрять?
Это, вы быстро собираете проект springboot, есть только одна среда - среда разработки (DEV), затем вы пишете код, пушите его в SVN или GIT, библиотеку mysql квази-производственной среды вашей проектной команды (UAT) и Среда sit определенно не является библиотекой, невозможно напрямую изменить файл конфигурации (конечно, вы действительно изменяете его напрямую, когда я этого не говорил..)
Итак, теперь мои друзья думают, как мне реализовать автоматическое переключение между локальной конфигурацией разработки и квази-производственной конфигурацией?
Сначала подготовьте файл конфигурации для нескольких сред.
Во-первых, вы должны иметьapplication.ymlдокумент
Затем, если вы хотите переключаться между разными средами, у вас должен быть файл конфигурации для соответствующей среды, скопируйте application.ymlЧетыре, соответствующие разным средам, реализуются следующим образом
Примечание. Убедитесь, что вы ясно видите, что это -sitне _сидеть, ваш файл не годится, он должен быть-ххх окончаниеЗдесь следует отметить, что выНастройка публичной части, пожалуйста, поместите его в application.yml, если это другая конфигурация (например, другая конфигурация mysql), поместите ее в соответствующий файл (например, пользователь mysql вашего сайта имеет разрешение на добавление, удаление и просмотр, а пользователь uat имеет право только на просмотр)
Здесь разбираются основы конфигурационной части.Если в это время проект запускает небольшой партнер, то как его запустить - это выполнить application.yml
Как переключиться?
Здесь вам нужно изменить pom.xml, чтобы переключить файл конфигурации.Введение выглядит следующим образом:
Примечание. Данные в @profileActive@ соответствуют данным ваших свойств.
profiles:
active: @profileActive@
4. Нужно добавить yaml-зависимости, иначе не запустится запуск idea (есть еще один способ скачать плагин, поддерживаемый idea, который здесь не рекомендуется)
Проверка переключения конфигурации с несколькими средами
1. проверка запуска идеи
Я написал демонстрационную проверку, добавив пользовательский параметр в каждый файл yml, и соответствующие номера портов отличаются, как показано ниже:
метод проверки
/**
- @author yanglei
- @desc
- @date 2020/6/28
*/
@RestController
public class DemoController {
@Value("${envname}")
private String envName;
@GetMapping
@RequestMapping("/getEnv")
public String getEnv(){
return "当前环境是:"+envName;
}
}
образец графика
тест разработчиков
пробный тест
2. Сделайте пакет jar для проверки
Используйте команду clean package -P prod для упаковки
Упаковка полная, проверяйтеЗаканчивать!
будь осторожен:
Если рядом с найденным токеном появляется символ '@', который не может запустить какой-либо токен, это означает, что плагин синтаксического анализа вашего файла pom не был добавлен.
Если идея не может быть запущена, это означает, что ваши yaml-зависимости не были добавлены
На этот раз это все, чем поделиться. Если вам все еще неясно, оставьте сообщение ниже. Хорошо, друзья мои, Ян Ян ускользнул~