【问题标题】:What is the advantages of using binding attribute in JSF? [duplicate]在 JSF 中使用绑定属性有什么好处? [复制]
【发布时间】:2023-03-14 14:57:01
【问题描述】:

见以下代码:

<h:inputText id="name" value="#{jsfBean.name}" binding="#{jsfBean.htmlInputText}"/>

在上面的示例中,我们使用绑定属性来链接服务器端 bean 属性。我想知道使用这个属性和不使用这个属性有什么区别。

【问题讨论】:

    标签: jsf


    【解决方案1】:

    使用绑定属性,您映射的是实际组件,而不是组件的值。例如,您的示例的支持 bean 中的属性如下所示

    UIInput htmlInputText= null;
    ...
    public void setHtmlInputText(UIInput userNoComponent) {
      this.userNoComponent = userNoComponent;
    }
    public UIInput getHtmlInputText() {
      return userNoComponent;
    } 
    

    将组件实例绑定到 bean 属性具有以下优点:

    • 支持 bean 可以通过编程方式 修改组件属性。
    • 支持 bean 可以实例化
      组件而不是让页面
      作者这样做。

    了解更多详情in this tutorial

    【讨论】:

    • 我还有一个疑问。在支持 bean 中是否正确实现:public HtmlInputText getHtmlInputText() { return htmlInputText; } 公共无效 setHtmlInputText(HtmlInputText htmlInputText) { this.htmlInputText = htmlInputText; }
    • 我相信是的。但我坚持使用 UIInput 除非你想使用子类的特定方法
    • 是否可以通过在值属性中使用绑定组件实例来设置值。当组件渲染时,我想在 backing bean 中设置值。
    猜你喜欢
    • 1970-01-01
    • 2011-02-22
    • 2014-04-12
    • 2011-03-16
    • 1970-01-01
    • 2016-03-12
    • 1970-01-01
    • 1970-01-01
    • 2019-08-22
    相关资源
    最近更新 更多