Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Java > Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC)
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 01.02.2017, 22:00   #11
mrprim
Форумчанин
 
Регистрация: 07.06.2016
Сообщений: 52
Репутация: 10
По умолчанию

Тоже верно) Я просто не понимаю одной элементарной вещи а уже десяток страниц гугла пропылесосил.
у меня есть mapDAO
Код:

@SuppressWarnings("unchecked")
    public List<Map> findAllMaps(){
        Criteria criteria = createEntityCriteria().addOrder(Order.asc("map_name"));
        criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
        List<Map> maps = (List<Map>) criteria.list();
        return maps;

и что бы отобразить все названия карт из таблицы Map - нужно в JSP странице прописать
Код:

<c:forEach items="${maps}" var="map">

            ${map.map_name}

        </c:forEach>

а если у меня есть:
Код:

public Map findByM_name(String map_name) {
        Criteria crit = createEntityCriteria();
        crit.add(Restrictions.eq("m_name", m_name));
        return (Map) crit.uniqueResult();
    }

как мне вытащить определенную карту по этому имени
хоть убей, не понимаю
mrprim вне форума   Ответить с цитированием
Старый 01.02.2017, 22:07   #12
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 16,979
Репутация: 3316

icq: 512-765
skype: alexp.frl
По умолчанию

Это Hibernate/JPA?
Я не в курсе как там запросы делать, последний раз когда я с ним работал я использовал Spring Data и там был JpaRepository и т.п. с методами типа find, findBy...
Alex11223 на форуме   Ответить с цитированием
Старый 01.02.2017, 22:14   #13
mrprim
Форумчанин
 
Регистрация: 07.06.2016
Сообщений: 52
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Это Hibernate/JPA?
Я не в курсе как там запросы делать, последний раз когда я с ним работал я использовал Spring Data и там был JpaRepository и т.п. с методами типа find, findBy...
как тогда по другому сделать, потому что судя по всему из 20 страниц гугла никто не знает. Я просто в безисходности тону
mrprim вне форума   Ответить с цитированием
Старый 01.02.2017, 22:20   #14
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 16,979
Репутация: 3316

icq: 512-765
skype: alexp.frl
По умолчанию

А с кодом выше в чем именно проблема?

Первая ссылка по запросу "jpa find by name" что-то такое и предлагает http://stackoverflow.com/a/14977153/964478

Если про сам вывод в JSP, то тоже ж просто addAttribute и там видимо по ${имя_атрибута...} будет доступно (сразу, без forEach).

Последний раз редактировалось Alex11223; 01.02.2017 в 22:25.
Alex11223 на форуме   Ответить с цитированием
Старый 01.02.2017, 22:56   #15
mrprim
Форумчанин
 
Регистрация: 07.06.2016
Сообщений: 52
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
А с кодом выше в чем именно проблема?

Первая ссылка по запросу "jpa find by name" что-то такое и предлагает http://stackoverflow.com/a/14977153/964478

Если про сам вывод в JSP, то тоже ж просто addAttribute и там видимо по ${имя_атрибута...} будет доступно (сразу, без forEach).
Код:

public String listMaps(@PathVariable String m_name, ModelMap model) {
		Map maps = mapService.findByM_name(m_name);
		model.addAttribute("m_name", maps);
		return "mapslist";

В jsp пишу
Код:

${maps.mapRus}

и выбивает ошибку что m_name не найдет при запуске страницы
HTTP Status 500 - Missing URI template variable 'm_name' for method parameter of type String
mrprim вне форума   Ответить с цитированием
Старый 01.02.2017, 23:08   #16
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 16,979
Репутация: 3316

icq: 512-765
skype: alexp.frl
По умолчанию

Дык добавили атрибут m_name, а пытаетесь обратиться к maps.
Ну и логично было бы назвать его map (и имя переменной тоже)

Код:

		Map map = mapService.findByName(m_name);
		model.addAttribute("map", map);
		return "mapcontent";

Код:

${map.mapRus}

Alex11223 на форуме   Ответить с цитированием
Старый 01.02.2017, 23:18   #17
mrprim
Форумчанин
 
Регистрация: 07.06.2016
Сообщений: 52
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Дык добавили атрибут m_name, а пытаетесь обратиться к maps.
Ну и логично было бы назвать его map (и имя переменной тоже)

Код:

		Map map = mapService.findByName(m_name);
		model.addAttribute("map", map);
		return "mapcontent";

Код:

${map.mapRus}

пробовал вот так:
${map.mapRus}
${map("mapRus").drowing_svg}
${map('mapRus').drowing_svg}
всегда пишет Missing URI template variable 'm_name' for method parameter of type String
mrprim вне форума   Ответить с цитированием
Старый 01.02.2017, 23:21   #18
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 16,979
Репутация: 3316

icq: 512-765
skype: alexp.frl
По умолчанию

А что в контроллере сейчас и какой запрос он обрабатывает (адрес)?

Ошибка ж вроде о том, что оно не нашло значение для имени в запросе.

Последний раз редактировалось Alex11223; 01.02.2017 в 23:23.
Alex11223 на форуме   Ответить с цитированием
Старый 01.02.2017, 23:27   #19
mrprim
Форумчанин
 
Регистрация: 07.06.2016
Сообщений: 52
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
А что в контроллере сейчас и какой запрос он обрабатывает (адрес)?

Ошибка ж вроде о том, что оно не нашло значение для имени в запросе.
в контроллере вот:
Код:

@RequestMapping(value = { "/", "/map" }, method = RequestMethod.GET)
	public String listMaps(@PathVariable String m_name, ModelMap model) {

		Map map = mapService.findByM_name(m_name);
		List<Map> all_maps = mapService.findAllMaps();
		model.addAttribute("map", map);
		model.addAttribute("all_maps", all_maps);
		model.addAttribute("loggedinuser", getPrincipal());
		return "mapslist";

и мне почему то кажется что он ругается на эту вещицу (@PathVariable String m_name я не совсем понимаю, правильно ли она пристоена
mrprim вне форума   Ответить с цитированием
Старый 01.02.2017, 23:40   #20
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 16,979
Репутация: 3316

icq: 512-765
skype: alexp.frl
По умолчанию

Дык вы определитесь вам список надо или один.

Это два разных запроса (и ответа) должно быть

Например /maps и /maps/Moscow

Для одного как-то так:
Код:

    @RequestMapping(value = "/maps/{name}", method = RequestMethod.GET)
    public String showMap(@PathVariable("name") String name, ModelMap model) {
        Map map = mapService.findByName(name);

        .......
    }

Alex11223 на форуме   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Java + Jsp + mysql + Spring, юзера с базы подтяrивает нормально, а когда хочу отобразить карты, то не отображает mrprim Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC) 7 01.02.2017 15:20
Выбор логики работы с MEMORY (HEAP) таблицами MySql Illusiony SQL, базы данных 8 14.02.2016 01:13
Проблема с кодировкой Tomcat JSP MySQL, все перепробывал. tank01 Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC) 1 12.10.2012 11:17
Работа с несколькими таблицами MySql Furyon SQL, базы данных 1 02.02.2011 10:30
JSP editor и JSP + spring Guide Jakethefish Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC) 0 15.06.2010 17:16


20:30.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru