浅谈JSF的两大两点:面向组件编程和事件驱动模式

最近做完了一JSF框架开发的大型项目,有感于对JSF框架的使用。

JSF的两个大亮点就是:

面向组件编程和事件驱动模式,

1.面向组件(component)模式,这里可以有两层意义上的组件,一个就是JSF支持的UI组件(不同的支持厂商会有不同的UI组件实现,比如apacheOracle的),还有一种意义上的组件,就是JSF框架的开放性――让用户定义自己的组件,这种组件包括在lifesicle上的一些组件,比如刚才说的UI组件,validator组件,handler组件等。

2.事件驱动模式,是相对于strutsMVC模式而言。Struts里,一个form只能对应一个ActiondispatchAction),也就是说,在struts里,一个表单只能对应一个事件,struts 这种事件方式,教做application event,而application eventcomponent event 相比,是一种粗粒度的事件。

            Struts里,表单对象ActionForm是一种对象,代表了一个应用,这个对象常常包含了页面上的所有字段,因此一个表单对应一个事件,那当我们需要将粒度细化到字段一级的时候,struts本身就不能满足需求了,往往需要使用javascript。大量的脚本充赤在页面上,显然不是很高明的做法。

而事件驱动模式,则是方法一级的。因为JSF里有了valuechangeListener的帮助。

事件驱动成了可能。

JSF允许为组件提供两个事件,Value Changed  listener action。从JSF的活动周期来看的话,valuechanged listener是在action之前的。所以。

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值