Как связать значение в библиотеке по умолчанию и перезаписать его, как только приложение определит свойства явно - PullRequest
0 голосов
/ 05 июля 2018

Я попытался создать утилиту для работы с электронной почтой, и ему нужны некоторые свойства сервера. Поэтому я хотел бы создать пакет и позволить приложению использовать его. Если приложения указывают свойства для утилиты электронной почты, она должна работать нормально. Если приложения этого не делают, он также должен работать нормально, используя свойства по умолчанию в утилите электронной почты. Это означает, что приложениям не нужно указывать свойства электронной почты для этого утилиты.

Возможно ли это сделать с помощью аннотации пружины @Value, поскольку приложения относятся к пружинному MVC или семейству пружин? Или что для этого лучше?

Пример: Приложение: A, EmailUtils: E, Свойства: P

  1. Используется E без заданного P в A. P в E.
  2. Используется E с заданным P в A. P в A.

ps: я бы не хотел жестко закодировать свойства в util, а затем перезаписать их, даже передать их конструктору.

1 Ответ

0 голосов
/ 05 июля 2018

Просто установите значение по умолчанию для аннотации значения в EmailUtils

   @Value("${some.key:my default value}")
   private String stringWithDefaultValue;
...