Использование @Value для вставки карты из файла yml в свойство конфигурации при весенней загрузке

Я пытаюсь ввести такую ​​карту из yml

redisDbIndex:
   key1: 1
   key2: 2
   key3: 3

в Map<String, String> map = new HashMap<>();

И в моем классе конфигурации (я не хочу использовать аннотацию @ConfigurationProperties(prefix = "..."), поскольку я уже знаю этот подход.

Я хочу знать, как сделать то же самое, используя аннотацию @Value("${placeholder}"). Это возможно? Если да, то как? Я просто изучаю внутренности. Было бы здорово, если бы кто-нибудь намекнул.

Я использую весеннюю загрузку 1.4.3.RELEASE (есть ли у нее такая функция?)

Возможный дубликат Как вставить карту с помощью аннотации @Value Spring?

Pospolita Nikita 25.06.2018 16:00

Конечно, это возможно. Ваши отступы правильные? У вас есть ошибки?

Urosh T. 25.06.2018 17:07

Это может быть полезным ответом, который вы ищете введите описание ссылки здесь

Deadpool 25.06.2018 18:00

дааа, я получаю такую ​​ошибку: java.lang.IllegalArgumentException: не удалось разрешить заполнитель 'redisDbIndex' в строковом значении "$ {redisDbIndex}". Сомнения: есть ли разница между @Value и @ConfigurationProperties в том, как они делают безопасные инъекции? Всегда ли @Value рассматривает строковые значения для вставки? Если я пытаюсь вставить список с помощью @Value, он работает, а карта - нет. Кроме того, существует ли стандарт для отступов. (Я использую 2 пробела в качестве отступа для пар ключ-значение)

Mukul Anand 26.06.2018 10:25

@PospolitaNikita Я пробовал использовать заполнитель "# {$ {redisDbIndex}}", но он все равно не работает. В этом примере они используют синтаксис файла свойств. Я действительно сомневаюсь, что это может не повлиять на использование yml или файла свойств, но, по крайней мере, для меня это не работает.

Mukul Anand 26.06.2018 12:14

Та же проблема на Spring Boot 2.4.4

AlexElin 04.04.2021 14:33
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
3
6
1 141
0

Другие вопросы по теме