Spring Bean of Type Map является особенным?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Spring Bean of Type Map является особенным?

Сообщение Anonymous »

Платформа: JDK 11, Spring Boot 2.6.6 /Spring 5.3.18 < /p>
По причинам, связанным с зависимостью, я обнаружил, что желаю создать, а затем ввести боб карты типа < /code>. Похоже, в этом типе, как я буду демонстрировать, есть что -то особенное.

Код: Выделить всё

import java.util.Map;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class ThingyTest {
@Bean("someOtherBean")
Object otherBean(@Qualifier("mapBean") Map map) {
return map.keySet();
}

@Bean("mapBean")
Map mapBean() {
return Map.of(
"key1", "value1",
"key2", "value2");
}
}
Мое желание связано с параметром с именем map для содержания:

Код: Выделить всё

{
"key1": "value1",
"key2", "value2"
}
< /code>
Тем не менее, он фактически содержит: < /p>
{
"mapBean": {
"key1": "value1",
"key2": "value2
}
}
Если я изменю тип типа Mapbean (как в типе возврата метода, так и в аргументе метода) на карту , затем я получаю желаемое поведение, но мне нужно сделать какой -то неприятный тип "особенность." Я уверен, что это поведение является преднамеренным, но я просто не могу найти никакой документации или объяснения его.>

Подробнее здесь: https://stackoverflow.com/questions/720 ... is-special
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»