background image

采取 Ioc 模式中的 Setter 注射方式。
 Backing Beans
 对于一个 web form,我们可以使用一个 bean 包含其涉及的所有组件,这个 bean 就称为
Backing Bean

 

, Backing Bean 的优点是:一个单个类可以封装相关一系列功能的数据和逻

辑。
 说白了,就是一个 Javabean 里包含其他 Javabean,互相调用,属于 Facade 模式或
Adapter 模式。
 对于一个 Backing Beans 来说,其中包含了几个 managed-bean,managed-bean 一定是有
scope 的,那么这其中的几个 managed-beans 如何配置它们的 scope 呢?
 ...
 property-name>visit
 #{sessionScope.visit}
 这里配置了一个 Backing Beans 中有一个 setVisit 方法,将这个 visit 赋值为 session 中的
visit,这样以后在程序中我们只管访问 visit 对象,从中获取我们希望的数据(如用户登陆
注册信息),而 visit 是保存在 session 还是 application 或 request 只需要配置既可。
 UI 界面
 JSF 和 Struts 一样,除了 JavaBeans 类之外,还有页面表现元素,都是是使用标签完成
的,Struts 也提供了 struts-faces.tld 标签库向 JSF 过渡。
 使用 Struts 标签库编程复杂页面时,一个最大问题是会大量使用 logic 标签,这个 logic
如同

if

语句,一旦写起来,搞的 JSP 页面象俄罗斯方块一样,但是使用 JSF 标签就简洁

优美:
 icon="/images/inbox.gif"
 action="inbox"
 disabled="#{!authenticationBean.inboxAuthorized}"/>
 如果 authenticationBean 中 inboxAuthorized 返回是假,那么这一行标签就不用显示,多
干净利索!