我正在使用 Spring MVC 3.1。我想在我的 asp 中显示我的模型的值,有时我需要使用条件逻辑。我知道 JSTL 标签,但我想知道 3.1 是否有更好的替代品?
目前我在jsp中显示模型值,如下所示:${model.name}
但我想做这样的事情:if name is John then do X or else do Y
我不想依赖百里香叶。
有没有其他选择?
我正在使用 Spring MVC 3.1。我想在我的 asp 中显示我的模型的值,有时我需要使用条件逻辑。我知道 JSTL 标签,但我想知道 3.1 是否有更好的替代品?
目前我在jsp中显示模型值,如下所示:${model.name}
但我想做这样的事情:if name is John then do X or else do Y
我不想依赖百里香叶。
有没有其他选择?
使用 JSP 2.0 表达式语言,您可以使用“三元/条件”运算符:
例如
<p>${myobj.test == xy ? 'hello' : 'nohello'}</p>
简短的回答: Spring 不附带复制(或简化)JSTL 标签的东西。
长答案: 我认为对于 JSP,Spring 期望 JSTL 是实现 taglib 的方式。Spring 确实有一个 taglib,但它都是关于用你的模型填写表格的。
我强烈反对${model.attribute}
在页面中放置文本,尤其是当文本来自任何形式的用户输入时。出于安全原因,在处理用户输入的数据时,您应该使用它c:out
来确保文本被正确转义。
你可以用c:if
or来做你的条件c:choose
。JSP 或 JSTL 中对 if...else的公认答案可能对此有所帮助。