powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring MVC и Map. Так и не сделали?
10 сообщений из 10, страница 1 из 1
Spring MVC и Map. Так и не сделали?
    #38447528
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть метод контроллера

Код: java
1.
2.
 
public String method(@RequestParam(value = "map") Map<String, String> map)



и запрос

Код: java
1.
map[0]=text1&map[1]=text2...



Как заставить это работать без создания модели(изврат)?

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
 
public String method(MyMapWrapper wrapper)

class MyMapWrapper  {

private Map<String,String> map;

// get/set;

}
...
Рейтинг: 0 / 0
Spring MVC и Map. Так и не сделали?
    #38447583
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И какой, по-твоему, должен получиться Map? - map = [{"0", "text1"}, {"1", "text2"}] - уже не изврат? Не проще по-правильному в массиве получить?
...
Рейтинг: 0 / 0
Spring MVC и Map. Так и не сделали?
    #38447587
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruckИ какой, по-твоему, должен получиться Map? - map = [{"0", "text1"}, {"1", "text2"}] - уже не изврат? Не проще по-правильному в массиве получить?
Ну можно вместо "0" и "1" передать строки :) Это же очень распространенная практика.
Со списками (может и с массивами) там тоже своя история, если нужны индексы, то нужно чтоб они шли с 0, иначе spring mvc при запросе list[100]=text1&list[101]=text2 создаст список на 102 элемента. Чтоб этого не было, нужно передавать без индексов(а иногда они нужны) list=text1&list=text2. Второй вариант как раз использовать не List, а Map, где ключ к карте и есть индекс.

Я к тому, может я что-то не понимаю, но мне например далеко не всегда нужно городить класс модели если в методе контроллера все два @RequestParam один из которых Long, а другой Map или List.
...
Рейтинг: 0 / 0
Spring MVC и Map. Так и не сделали?
    #38448251
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdmЕсть метод контроллера



Код: java
1.
map[0]=text1&map[1]=text2...



[/src]

В обычном сервлете есть такое :
String[] map= request.getParameterValues("map");

как раз для обработки данных из формы где есть select multiple

Код: html
1.
<select id ="map" name="map" size="5" multiple required>



оно?
...
Рейтинг: 0 / 0
Spring MVC и Map. Так и не сделали?
    #38448296
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спринг мвц хорош своей модульностью. там почти любой компонент можно подменить. возьмите, да напишите свой парсер строки параметров на правильный маппинг
...
Рейтинг: 0 / 0
Spring MVC и Map. Так и не сделали?
    #38449028
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Penkov Vladimirспринг мвц хорош своей модульностью. там почти любой компонент можно подменить. возьмите, да напишите свой парсер строки параметров на правильный маппинг
Во-первых, это самое базовое что вообще может быть Во-вторых, проблема в том, что не сделать через Formater или HandlerArgumentResolver
...
Рейтинг: 0 / 0
Spring MVC и Map. Так и не сделали?
    #38449030
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1, нет, не оно)
...
Рейтинг: 0 / 0
Spring MVC и Map. Так и не сделали?
    #38449336
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdmPenkov Vladimirспринг мвц хорош своей модульностью. там почти любой компонент можно подменить. возьмите, да напишите свой парсер строки параметров на правильный маппинг
Во-первых, это самое базовое что вообще может быть Во-вторых, проблема в том, что не сделать через Formater или HandlerArgumentResolver

вы лукавите. я писал свой фильтр, который параметры запроса инжектил в сессионные бины с той логикой, которая мне нужна была. весь маппинг, весь парсинг я реализовывал сам. кода - 303 строки сключая пробелы
...
Рейтинг: 0 / 0
Spring MVC и Map. Так и не сделали?
    #38449527
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdmAtum1, нет, не оно)

Сами подумайте как он вам узнает что набор параметров ваших это map ?

Пусть будет не map - а строка , из строки вы можете создать map.

Пример:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
[key1=value1,key2=value2]

     public static Map<String, Boolean> convertToHashMap(String str) {
         
        Map<String, Boolean> map = (Map<String, Boolean>) new HashMap<String, Boolean>(){

            @Override
            public Boolean get(Object key) {
                Boolean value = super.get(key);
                if(value == null) return Boolean.FALSE;
                return value; 
            }
        };
        
        if(StringUtils.isEmpty(str)) return map;
        
        String s = str.replaceAll("\\[", "").replaceAll("\\]", "");
        String[] entryes = s.split(",");
        for (int i = 0; i < entryes.length; i++) {
            String[] entry = entryes[i].split("=");
            String key = entry[0].replaceAll(" ", "").trim();
            Boolean value = Boolean.parseBoolean(entry[1].replaceAll(" ", "").trim());
            map.put(key, value);
        }
        return map;
    }


оно ?
...
Рейтинг: 0 / 0
Spring MVC и Map. Так и не сделали?
    #38449589
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1, Я могу сам преобразовать параметры в Map, это не проблема (например вам вариант). Я удивляюсь почему такая казалось бы базовая функциональность не реализован (или реализована, и я ее не знаю).
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring MVC и Map. Так и не сделали?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]