Каков наилучший способ вывести сообщения об ошибках (пакеты ресурсов) из кода src в spring и springboot? - PullRequest
0 голосов
/ 30 мая 2019

Я ищу лучший способ вывести мои сообщения об ошибках валидации из моего кода src в приложение весенней и весенней загрузки, чтобы избежать сборки / развертывания при каждом изменении сообщений об ошибках. Есть ли какие-нибудь способы достичь этого?

Ответы [ 2 ]

0 голосов
/ 30 мая 2019

Стандартная структура пакетов ресурсов предполагает, что ваши пакеты ресурсов являются файлами свойств в папке ресурсов.Таким образом, они упакованы внутри вашего jar-файла как часть процесса сборки.

Однако вы можете реализовать собственную ResourceBundle загрузку:

https://docs.oracle.com/javase/tutorial/i18n/resbundle/control.html

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

0 голосов
/ 30 мая 2019

Вы можете сохранить все сообщения об ошибках или успешных проверках в файле свойств. Если вы хотите экспортировать, вы можете поместить файл свойств вне файла JAR весенней загрузки. Нет необходимости размещать конфигурацию внутри банки. Ниже приведен фрагмент кода для его достижения.

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import org.springframework.context.annotation.PropertySources;
import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;

    @Configuration
    @PropertySources({
      @PropertySource("file:config/other-config.properties"),
      @PropertySource("file:config/app-config.properties")
    })
    public class ExternalConfig {

      @Bean
      public static PropertySourcesPlaceholderConfigurer propertyConfigInDev() {
        return new PropertySourcesPlaceholderConfigurer();
      }
    }

В приведенном выше коде в строке @PropertySource("file:config/app-config.properties") config - это имя папки или каталога, который содержит много файлов свойств, таких как "app-config.properties". Для лучшего понимания я приведу ниже изображение, внешний файл конфигурации и подпружиненный загрузочный фляга будут выглядеть следующим образом.

enter image description here

...