网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.利用Java Applet编程实现动画特技.
.item 方法.
.struts构建文件上传(2).
.制作Windows mobile下软件安装包.
.《实时UML与Rational Rose RealT.
.Sun将升级高端Unix服务器 UltraS.
.Spring Framework中的面向方.
.Struts的体系结构.
.3d与人生.
.EJB设计模式4.
.变态级JAVA程序员面试32问.
.课程介绍(1):SL-110 初级Java语言.
.使用JDBC和Hibernate来写入Blob型.
..NET应用自动部署窗体技术详解(1).
.用Factory Method模式扩展MyMSDN.
.谈谈各种JAVA中的调用程序方式.
.Enterprise JavaBeans导论7.
.XML 和 Java:一个强大的组合.
.Java繁体中文处理完全攻略.
.理解JavaHelp结构的好处.

事件监听器 将JavaBeans接通起来的方法(2)

发表日期:2008-1-5



  事件监听器 将JavaBeans接通起来的方法(2)

所有这些与Beans有何关系?
JavaBeans主要利用事件监听器接口进行通讯

事件监听器为对象提供了一种普适的不经过继续关系而进行通讯的方法。正因为如此,他们对于组件技术来说,是一种非常好的通讯机制,从某种角度来讲,它们即是JavaBeans。虽然上面看到的事件监听器全都出现在AWT中,但他们的应用不仅仅限于用户接口。他们可以被应用于各式各样的事件:属性的变更,传感器的阅读,时钟事件,文件系统行为,对象命名等。

现在开始“Beany”部分

#你能够为它们定义你自己的事件类型和事件监听器。

#假如你的新事件类型被称为Eventtype,那么通过实现下面两个方法,你的Beans就能成为你的新事件类型的源。


o addEventtypeListener(EventObject e)
o removeEventtypeListener(EventObject e)

#那么通过实现接口EventListener,其它Beans能够成为事件的目标。

#最后,你可以通过调用sourceBean。addEventtypeListener(targetBean)"接通"事件的源和事件目标。

创建和利用你自已的EventObject类型
让我们看一个创建EventObject类型的例子。这个例子是在上个月的一个例子,BarChartBean的基础上进行"脑外科式"(brainsurgery)的改造而成的。我先在BarChartBean中增加代码,以使得在Bar区域内,用户每次点击或拖动鼠标时,都重先设置percent属性。这为我们提供了一个通过鼠标来改变Percent属性的方法。

BarChartBean通过预先定义的PropertyChangeListener接口(在java。beans包中定义的,通用的事件监听器接口),来通知其它对象它的percent属性变化情况。现在,我们通过定义一个新的事件类型,PercentEvent,为外部Beans增加另一个方法,以使这些Beans能够被通知到每一次percent的变化。



import java.util.*;

//
//该类封装每一次Percent属性的变化,并将变化传递给"PercentListener".
//

public class PercentEvent extends java.util.EventObject
{
protected int iOld_, iNew_;

public PercentEvent(Object source, int iOld, int iNew)
{
super(source);
iOld_ = iOld;
iNew_ = iNew;
}

public int getOldPercent() { return iOld_; }

public int getPercent() { return iNew_; }

public int getChangedBy() { return iNew_ - iOld_; }
}

你是否还记得,在前面我们曾提到过在事件中封装类规范(class-specific)数据?妤了,在此,新的和旧的百分比值都规范于PercentEvent事件类。

现在,让我们为这一新的事件类型定义一个监听器接口。

import java.util.*;

//每一个想监听"percent"变化情况的类都
//应该实现这个接口

public interface PercentListener extends EventListener
{
public void percentChanged(EventObject e);
}

上一篇:SpringAOP在DWR安全上的应用 人气:820
下一篇:使用圆括号 人气:690
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐