当前位置: 首页 > 知识库问答 >
问题:

以嵌套方式使用JSTL设置JSP属性?

谷梁淇
2023-03-14

我下面设置了一个名为“form”的JSP属性

<c:set value="${fieldAttributeMap[rowId].buildForm}" var="form" />

这是有效的。属性“form”包含一个Java对象,它将用于进一步评估和稍后在JSP中显示。但是,我想在不事先知道表单名称的情况下以更通用的方式使用它——它可以被命名为例如“ModelForm”而不是“buildForm”。如果我们假设我已经将变量的名称存储在JSP属性“formName”中

<c:set value="buildForm" var="formName" />

如何使用它来设置JSP属性“form”,如第一个代码示例中所示?基本上,表达式必须计算两次,就像这个虚构的、不起作用的例子:

<c:set value="${fieldAttributeMap[rowId][${formName}]}" var="form" />

我想到的唯一解决办法是要么编写自己的标记,要么使用过时的Struts bean:define标记。但我希望有更好的解决方案或解决办法。

编辑:有人建议,这个问题可能与在jstl中使用变量值作为参数调用另一个变量是重复的,但是,这里提供的解决方案不适用,因为我需要将属性的名称替换为另一个Java对象的属性。

共有1个答案

汝天宇
2023-03-14

您只需要${field dAttie teMap[rowId][formName]}

 类似资料:
  • 我有以下代码: 我想删除脚本,我尝试使用c: set与不同的范围,但它不起作用。是否可以使用JSTL标签设置请求属性? 我试过了,但没有成功: 而且还 之后有一个包括: 显然,在包含的JSP中,请求属性不可见。

  • 给出以下POJO示例:(假设所有属性都是getter和setter) 可以轻松地查询数据库(在我的例子中是postgres),并使用BeanPropertyRowMapper填充消息类列表,其中db字段与POJO中的属性匹配:(假设db表具有与POJO属性对应的字段)。 生成已填充关联用户的消息列表 用例: 最终,这些类作为序列化对象从Spring控制器传递回来,这些类被嵌套,这样得到的JSON/

  • 我正在通过jstlSpring启动打开jsp页面 我在pom中包括了JSTL和Jasper。xlml 我将配置添加到我的Web应用程序中 这是控制器中的请求映射 我的jsp文件位于webapp/WEB-INF/views中 在我将thymeleaf依赖项添加到pom之前,一切都很正常 我开始出现以下异常: 组织。springframework。网状物util。NestedServletExcept

  • 问题内容: 我有一个对象,它可以是任何数量的深度,并且可以具有任何现有属性。例如: 在此我想设置(或覆盖)属性,如下所示: 属性字符串可以具有任何深度,并且值可以是任何类型/事物。 如果属性键已经存在,则不需要合并对象和数组作为值。 前面的示例将产生以下对象: 如何实现这种功能? 问题答案: 此函数使用您指定的参数应添加/更新容器中的数据。请注意,您需要跟踪架构中的哪些元素是容器,哪些是值(字符串

  • 我有一个对象,可以是任何数量的层次深,可以有任何现有的属性。例如: 在此基础上,我希望设置(或覆盖)如下属性: 属性字符串可以有任何深度,值可以是任何类型/事物。 如果属性键已经存在,则不需要合并作为值的对象和数组。 上一个示例将生成以下对象: 如何实现这样的功能?

  • 问题内容: 给定以下示例POJO :(假定所有属性的Getter和Setter) 可以轻松地查询数据库(在我的情况下为postgres),并使用BeanPropertyRowMapper填充Message类的列表,其中db字段与POJO中的属性匹配:(假定DB表具有与POJO属性对应的字段)。 我想知道-是否有一种方便的方法来构造单个查询和/或以这种方式创建行映射器,以也在消息中填充内部“用户”