【问题标题】:Convert key-value pairs to bean将键值对转换为 bean
【发布时间】:2015-03-23 09:21:37
【问题描述】:

我读了这个question,我会看看beanutils,但我需要更具体的东西。 我有一个 JSF 表单,所以在发布它之后,JSF 框架将为我完成这项工作,获取 post 参数(键值对),适当地转换它们并放入相关的 bean 属性。 我希望表单中的一些字段基于键值对进行预编译。我可以利用 jsf 的力量来实现这个目标吗?

换句话说,我有键值对,我想用它们来填充现有 JSF 表单中的一些字段,从而避免手动编译它们。

任务更加复杂,因为在表单中我有一些 html 选择。

它们对应于具有 ID 和描述的字典对象。 不幸的是,在相应的键值对中,我有字段名称和描述,而不是 id。

更新更多信息

表单已经存在,所有字段都被映射到一个实体,比如说 Person 类型,这样:

<h:inputText value="#{bean.person.name}" />
<h:inputText value="#{bean.person.state}" />

在其他地方我有这样的字符串:

name=Bruno
state=Germany

beanutils 方法似乎很有前途,我想避免对代码中的字段名称进行硬编码。

初始化代码会变成:

public void preCreate() 
{ 
  selectedPerson = new Person();
  fillFields(myMap, selectedPerson);
}

【问题讨论】:

    标签: jsf-2 javabeans


    【解决方案1】:

    最后,我更好地集中了问题。

    beanutils 方法从一开始就显得有点矫枉过正,因为我必须向服务器添加新库并编写一些转换器。但是转换器和所有验证逻辑仍然存在于 jsf 页面中。

    我真正需要的是一种在表单的输入字段中放入一些文本的简单方法,这个任务可以通过一些 javascript 轻松完成。

    【讨论】:

      猜你喜欢
      • 2020-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-31
      • 2019-05-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多