我在下面的代码中找到了详细信息:
#{bean.value eq 'S' || bean.value eq 'C'}
我们可以使用类似SQL IN
子句的东西来简化这个吗?下面的虚构示例:
#{bean.value in ('S','C')}
答案 0 :(得分:1)
如果您正在使用EL 3.0(Java EE 7),那么您只需使用#{[x,y,z]}
语法构建contains()
并在其上执行String
。如果所需的bean属性返回char
(因此不是enum
或#{['S','C'].contains(bean.value)}
),那么这应该是:
Collection
或者,如果您只使用EL 2.2(Java EE 6),那么您必须将某些HashSet
(例如contains()
)中的值保存为bean属性并执行{{ 1}}在它上面:
#{bean.allowedValues.contains(bean.value)}
或者如果你还没有使用EL 2.2,那么,坚持你的初始方法,或者创建一个loadCSS类似下面的东西:
#{f:contains(bean.value, bean.allowedValues)}
答案 1 :(得分:0)
AFAIK你不能。但是您可以在HashMap中保存要检查的值。 然后你可以检查
#{pageFlowScope.beanName.mapVar[bindings.Dept.attributeValue] == null}
您可以检查返回的值是否为空/空。
西特