JavaBean高级应用.ppt

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JavaBean高级应用 第八章 回顾 软件组件模型 JavaBean JavaBean的属性 目标 代理事件模型 JavaBean中访问数据库 授权事件模型 4-1 在JavaBean中,定义了一个一般的、可扩充的事件机制,称为授权事件模型 事件源产生事件,把它发送到一系列监听器 为了收到特定类型事件的通知,监听器需要向事件源注册 授权事件模型 4-2 授权事件模型的要素: 事件:描述事件源的状态变化 事件源:产生事件 事件监听器:收到事件通知 授权事件模型 4-3 事件源的责任: 提供注册的方法,允许监听器为了获得特定类型的事件通知进行注册 产生一个事件 把事件发送到所有注册过的监听器:广播和单播 授权事件模型 4-4 监听器的责任: 向事件源注册,以便收到特定事件的事件通知。 实现接口,接收该类型的事件 如果不再要求事件通知,取消注册。 命名模式 命名模式使编程工具能够分析出Bean的事件 事件: “事件名Event” 监听器接口:“事件名Listener” 增加和取消监听器的方法: public void addEventNameListener(EventNameListener e) public void removeEventNameListener(EventNameListener e) 添加Bean自定义事件步骤 4-1 编写继承java.util.EventObject的事件类 public class MouseMovedEvent extends java.util.EventObject{ protected int x, y; MouseMovedEvent(java.awt.Component source, Point location){ super(source); x = location.x; y = location.y;} /* 获取鼠标位置*/ public Point getLocation() { return new Point(x, y); } } 添加Bean自定义事件步骤 4-2 编写带有单一通知方法的监听器接口。 通知方法必须有一个事件类型的单一参数,返回类型为void /*定义鼠标移动事件的监听器接口*/ interface MouseMovedListener extends java.util.EventListener { /*定义鼠标事件监听器所应支持的方法*/ void mouseMoved(MouseMovedEvent mme); } 添加Bean自定义事件步骤 4-3 事件监听器类实现监听器接口 class ArbitraryObject implements MouseMovedListener { public void mouseMoved(MouseMovedEvent mme){ //进行相应的事件处理过程 ... } } 添加Bean自定义事件步骤 4-4 事件源的实现如下: public class Model{ private Vector listeners = new Vector(); public synchronized void addMouseMovedListener(MouseMovedListener mcl){ listeners.addElement(mcl); } public synchronized void removeMouseMovedListener(MouseMovedListener mcl){ listeners.removeElement(mcl); } protected void notifyMouseMoved () { Vector l; MouseMovedEvent e = new MouseMovedEvent (this); synchronized(this) { l = (Vector)listeners.clone(); } for (int i = 0; i l.size(); i++) { ((MouseMovedListener)l.elementAt(i)). mouseMoved (e); } } } 参与各方的关系 在Bean中访问数据库 6-1 根据员工号查询员工姓名 定义如下类: db.java,封装了加载JDBC驱动、连接数据库、访问数据库表的操作,供子类使用 emp.java,从db类派生,主要进行员工数据的读取操作 BeanTest.java 在Bean中访

文档评论(0)

iris + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档