加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – JSP EL:动态创建属性名

发布时间:2020-12-14 05:41:10 所属栏目:Java 来源:网络整理
导读:参见英文答案 How to get value of bean property when property name itself is a dynamic variable1个 我正在尝试使用JSP动态生成内容. 我有一个 c:forEach我在其中动态创建bean访问器的循环.骨架类似于: c:forEach var="type" items="${bean.positionTy
参见英文答案 > How to get value of bean property when property name itself is a dynamic variable1个
我正在尝试使用JSP动态生成内容.

我有一个< c:forEach>我在其中动态创建bean访问器的循环.骨架类似于:

<c:forEach var="type" items="${bean.positionTypes}">
    ${bean.table}  // append 'type' to the "table" property
</c:forEach>

我的问题是:我想根据类型更改${bean.table}.例如,如果类型是{“Janitor”,“Chef},我想生产:

${bean.tableJanitor}
${bean.tableChef}

我怎样才能做到这一点?

解决方法

您可以使用大括号[]来使用动态键访问bean属性.
${bean[property]}

所以,根据你的例子:

<c:forEach var="type" items="${bean.positionTypes}">
    <c:set var="property" value="table${type}" />
    ${bean[property]}
</c:forEach>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读