java - 如何在 EL 中比较字符串变量?

标签 java jsf jsf-2 el

我有一颗 bean Mybean有 2 个属性:

ArrayList<String> stringArr = {'a','b','c'};
User user; // With 'name' property.

我需要显示stringArr<t:dataList>如下:

<t:dataList value="#{MyBean.a}" var="i">
     <!-- Compare user.name bean propery with i. -->
     <c:if test="#{???}"></c:if>
</t:dataList>

我怎样才能进入test="#{???}"比较#{user.name}与 var #{i}每次迭代?我最终需要检查是否 user.name == i .

最佳答案

如果我没有误读你的问题,你想根据循环变量的状态输出一些内容,例如对于 h:outputText:

<t:dataList value="#{MyBean.a}" var="i">
  <h:outputText value="#{MyBean.user.name == i ? 'match' : 'no match'}"/>
</t:dataList>

如果条件为真,则打印match,否则打印no match

关于java - 如何在 EL 中比较字符串变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10876472/

相关文章:

java - 在 Java 中访问类内部实例变量的最佳方法是什么?

java - 当我从抽象类扩展时,是否会执行任何操作?

java - Yaml 文件上的 Maven ArcheType 过滤器

jsf - Facelets: ui:param 默认值

jsf - primefaces文件上传缩图

java - Spring boot +Spring data JPA +二级缓存给出变异错误

java - 如何在 JSF 中与 (MySQL) 数据库交互

jsf - ui 中条件渲染子类出现 PropertyNotFoundException :repeat

java - 如何使用 JSF 2.0 显示浏览器名称和版本?

jsf-2 - 如何设置 primefaces 时钟小部件的开始时间?