我正在使用Spring MVC 3.1。我想在我的asp中显示我的模型中的值,有时我需要使用条件逻辑。我知道JSTL标签,但我想知道3.1附带的更好的替代品吗?
目前我在jsp中显示模型值,如:${model.name}
但我想做的事情如下:if name is John then do X or else do Y
我不想让thymleaf依赖。
还有其他选择吗?
答案 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:if
或c:choose
进行有条件的处理。 if...else within JSP or JSTL接受的答案可能对此有所帮助。