2013-09-16 2 views
0

Я использую Spring MVC 3.1. Я хочу показать значения из своих моделей в моем asp, и иногда мне нужно использовать условную логику. Я знаю о тегах JSTL, но мне интересно, есть ли лучшая альтернатива, поставляемая с 3.1?Как использовать теги экспрессии в Spring MVC 3.1

В настоящее время я показываю значение модели в JSP следующим образом: ${model.name}

Но я хочу, чтобы делать такие вещи, как: if name is John then do X or else do Y

Я не хочу иметь thymleaf зависимости.

Есть ли альтернативы?

+0

Я мог бы также отметить, что вся концепция логики в jsp была показана снова и снова, чтобы укусить вас в конце концов. Многие испытали боль. Это, как говорится, можно использовать тщательно для хорошего эффекта. –

ответ

0

Короткий ответ: весна не поставляется с чем-то, что дублирующий (или облегчает) теги JSTL.

Длинный ответ: Я думаю, что для JSP Spring ожидается, что JSTL - это способ пойти для taglib. У Spring есть taglib, но все дело в заполнении форм вашей моделью.

Я бы категорически отказался от использования ${model.attribute} для размещения текста на странице, особенно если текст получен из любой формы пользовательского ввода. По соображениям безопасности при работе с введенными пользователем данными вы должны использовать c:out, чтобы обеспечить правильное экранирование текста.

Вы можете сделать это с помощью c:if или c:choose. Это может помочь принятый ответ if...else within JSP or JSTL.

0

С JSP 2.0 Expression Language вы можете использовать "Ternary/Условный" оператор:

Э.Г.

<p>${myobj.test == xy ? 'hello' : 'nohello'}</p> 
Смежные вопросы