- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JSF Web应用开发 第6章 事件驱动 6.1 Java事件驱动概述 所谓事件驱动,是指Java应用程序能够对某些事件作出响应。发出事件的对象称为事件源,对事件感兴趣的对象称为监听器。事件驱动就是事件源引发事件、监听器捕获事件并作为响应的过程。 事件用对象来表示。事件对象是java.util.EventObject类或其子类的实例,通常包含事件源、事件的名称、事件发生的时间等属性。 监听器是监听器类的实例对象。通常,监听器包含一个或多个事件处理方法,每个事件处理方法处理某个特定类型的事件。 6.1 Java事件驱动概述 监听器类必须实现监听器接口,监听器接口定义了监听器类必须实现的方法。所有的监听器接口必须继承监听器接口基类java.util.EventListener。 事件源是引发事件的对象(组件)。通常,作为事件源的类必须满足以下条件: 事件源必须在内部维护一个已注册监听器的列表。 事件源必须提供注册方法,以允许将监听器注册为事件的接受者。 事件源必须提供注销方法,以允许将监听器注销。 事件源必须能够实例化事件类,即产生事件对象。 当事件对象产生后,事件源必须向所有的注册监听器广播该消息。 6.2 JSF事件驱动模式 JSF事件类 javax.faces.event.PhaseEvent与请求处理生命周期的各个阶段相关的阶段事件。 javax.faces.event.ActionEvent由动作类UI组件引发的动作事件。 javax.faces.event.ValueChangeEvent由输入类UI组件引发的值改变事件。 6.2 JSF事件驱动模式 JSF监听器接口 javax.faces.event.PhaseListener用于监听阶段类事件的监听器接口,其声明的方法包括:void afterPhase(PhaseEvent event);void beforePhase(PhaseEvent event);PhaseId getPhaseId(); javax.faces.event.ActonListener用于监听动作事件的监听器接口,其声明的方法有:void processAction(ActionEvent event) throws AbortProcessingException; 6.2 JSF事件驱动模式 JSF监听器接口 javax.faces.event.ValueChangeListener用于改变值改变事件的监听器接口,其声明的方法有:void processValueChange(ValueChangeEvent event) throws AbortProcessingException; 6.2 JSF事件驱动模式 JSF监听器的注册 在JSP页面,通过f:actionListener标签注册一个动作监听器:webuijsf:button binding=”#{Page1.button1}” id=”button1” …… f:actionListener type=”eventdriven.MyListener1”//webuijsf:button 6.2 JSF事件驱动模式 通过方法绑定表达式指定回调方法为事件处理方法 webuijsf:button actionExpression=”#{Page1.button1_action}” id=”button1” ……/ JSF框架会为所有的动作事件源自动注册一个默认的动作监听器。这个默认的动作监听器的processAction()方法执行时会自动调用actionExpression属性指定的回调方法。 6.2 JSF事件驱动模式 JSF事件队列 JSF事件在引发后并非立即得到广播。在将事件通知到各个监听器之前,JSF将事件排入事件队列中,在状态相对稳定时再处理事件。 需要时,程序代码页可以通过创建事件对象并放入事件队列来引发事件:ActionEvent event = new ActionEvent(this.getButton1());event.queue(); 6.3 动作事件 动作事件类// 构造方法public ActionEvent(UIComponent component) // 获取事件源public Object getSource() // 将事件放入JSF事件队列中public void queue() // 将本事件通知给指定的监听器public void processLis
您可能关注的文档
最近下载
- 训练基地信息化系统维保项目方案投标文件(技术方案).doc
- 人教版道德与法治三年级上册第5课《 走近科学家》第2课时 他们离我们并不遥远 教学课件.pptx VIP
- 黄浦区卢湾中学能源审计报告.pdf VIP
- HDJH30-120J型架桥机说明书.doc
- 5.2用圆设计图案(表格式)教学设计 人教版六年级上册数学.docx VIP
- 航空集装器知识 .pdf VIP
- SHT-3012-2011 石油化工金属管道布置设计规范.pdf VIP
- AI赋能教育的思考与应用 教师培训课件.pptx VIP
- sfz jd2015数据库数据真实性鉴定.pdf VIP
- 公司中层领导人员任职回避和公务回避管理实施细则.docx VIP
文档评论(0)