JSF 1.2入门,第1部分 构建基本应用程序 - 编程入门网
</managed-bean-class>
<managed-bean-scope>none</managed-bean-scope>
</managed-bean>
calculatorController 在 request 范围下映射。将 calculator 注入 calculatorController 的方 法是使用 <managed-property> 并传递表达式 #{calculator}。这会创建一个 Calculator 对象并 使用 CalculatorController 的 setCalculator 方法把它注入 CalculatorController,见清单 28: 清单 28. 托管的 calculatorController,request 范围,用 managed-property 注入
CalculatorController 要使用 calculator,所以注入了 calculator。这样就可以使用 calculator 并让它与 JSF 相互隔离,这是良好的模型对象应该具备的性质。JSF 相关代码只出现在 CalculatorController 中。这种良好的关注点隔离会使代码的可测试性和可重用性更好。 CalculatorController 的 JSF 绑定组件 根据设计,CalculatorController 了解 JSF 的许多情况。CalculatorController 绑定三个 JSF 组 件,其中之一是 resultsPanel,它代表显示计算器结果的面板,见清单 29: 清单 29. CalculatorController 的 resultsPanel
resultsPanel 通过 JSF 绑定到 CalculatorController,见清单 30 中的 binding 属性: 清单 30. 把组件绑定到控制器
JSF 1.2入门,第1部分 构建基本应用程序(16)时间:2011-08-09 IBM Richard Hightower在清单 30 中,binding="#{calculatorController.resultsPanel}" 通过绑定关联 resultsPanel 组 件。实际上,JSF 会看到这个表达式,在装载页面时,它通过调用 calculateController.setResultsPanel 方法注入 resultsPanel 组件。这个方便的机制让我们能够以程 序方式操作组件的状态,不需要在组件树中移动。 实际上,JSF 所做的操作是调用 calculateController.getResultsPanel。如果这个调用返回一个组 件,JSF 视图就会使用这个组件。如果 calculateController.getResultsPanel 返回 null,JSF 就会创 建 resultPanel 组件,然后用基于绑定表达式的新组件调用 calculateController.setRes |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |