来自db的JSF必需和隐藏字段

时间:2013-10-04 10:48:40

标签: jsf primefaces

我的项目中有jsf / primeface表单组件。还有db表描述了应该需要或隐藏哪个字段。此表由另一个系统(与java无关)使用,因此我的项目也应该使用该数据库表。

问题是那些字段及其id在db中被描述为数字,在我的项目中,jsf / primefaces组件具有人类可读的id。例如,db表中的“name”字段有id = 1,required = 0,hidden = 1,而在xhtml中我有:

<p:inputtext id="idName" required="false" rendered="true"...>

是否有任何方法可以轻松地将idName组件映射到数据库条目但不更改数据库表结构?

1 个答案:

答案 0 :(得分:2)

只需创建一个代表该字段的实体:

public class Field {

    private Long id;
    private boolean required;
    private boolean hidden;

    // ...
}

并在您的视图中使用它,如下所示:

<p:inputText value="#{bean.values[field.id]}" required="#{field.required}" rendered="#{not field.hidden}" />

#{bean.values}引用Map<Long, Object>