如何在Spring MVC 3.1中使用表达式标签

时间:2013-09-16 21:33:19

标签: spring spring-mvc

我正在使用Spring MVC 3.1。我想在我的asp中显示我的模型中的值,有时我需要使用条件逻辑。我知道JSTL标签,但我想知道3.1附带的更好的替代品吗?

目前我在jsp中显示模型值,如:${model.name}

但我想做的事情如下:if name is John then do X or else do Y

我不想让thymleaf依赖。

还有其他选择吗?

2 个答案:

答案 0 :(得分:0)

使用JSP 2.0表达式语言,您可以使用“三元/条件”运算符:

E.g。

<p>${myobj.test == xy ? 'hello' : 'nohello'}</p>

答案 1 :(得分:0)

答案简短: Spring没有附带复制(或简化)JSTL标签的东西。

答案很长: 我认为对于JSP Spring来说,JSTL是获取taglib的方法。 Spring确实有一个taglib,但它只是用模型填充表单。

我强烈建议不要使用${model.attribute}在页面中放置文本,特别是如果文本来自任何形式的用户输入。出于安全原因,在处理用户输入的数据时,您应使用c:out确保文本被正确转义。

您可以使用c:ifc:choose进行有条件的处理。 if...else within JSP or JSTL接受的答案可能对此有所帮助。