下面的是一些介绍[从网上抓的]
javaBean被定义为“一种可在开发工具中可视化操作的可复用的软件构件。”这种很吸
引人的定义实际上没有说出什么。这句话中的一丝线索是“可在开发工具中可视化操作”
简而言之,JavaBean是一个软件构件。
由于现存构件模型的种种问题,JavaBeans的部分目标相当明显。以下便是其中的一部分
(1)便携性:由Java编写,没有与平台相关的代码。
(2)轻量:实现小至一个按钮或大至一个完整的表单或文字处理器。
(3)易于创建:使创建Java构件更容易,不必实现无数的方法。有或没有开发工具都能
够创建构件。从简单的applet向Java构件的移植要简单。
(4)能嵌入其它构件模型:JavaBean可作为如 ActiveX、 OpenDoc或其它构件一样的构件,
且能嵌入 ActiveX或 OpenDoc的容器中,如文字处理器,并且与本地构件有一样的表现。
一个嵌入文字处理器的Java图表构件能与同一个文档中的其它构件交互。
(5)能访问远程数据:一Java构件可使用任何标准的分布对象(JavaIDL或远程方法唤醒)
或分布数据(JDBC)机制来访问远程数据。实事上,bean可使用任何标准的环境设施。
下面是javabean的一些属性:
(1)持续性
持续性允许一个构件保存它的状态,因此它还能被重新创建。利用持续性机制,
表单构件可存为一个文件,并在其它时间被打开,使以前的数据、公式和设置
完好无损。 JavaBeans持续性使用Java 环境对象序列化机制产生I/O 流并
在以后恢复。构件创建者只需实现可序列化的接口以使构件保持持续。持续的
流可能为一个Java 文件、一网络连接或更有趣一些,一个由其它构件模型提供
的流。若 JavaBean构件嵌入一个 ActiveX或 OpenDoc 构件中, bean通过相关
的“桥”提供持续的流。
(2)制定
制定是JavaBean 构件的新特性之一。简而言之,bean 的创建者不仅创建运行
状态的构件,而且还通过扩展java.awt.Component 类创建了UI工具箱的类。这
个 UI工具箱可被用来制定 bean的一个实例。利用其它的构件模型,开发环境、
可视化开发工具或任何其它的都必须提供所有对该构件的制定逻辑。 JavaBean
构件可随同自己的UI 工具箱类发布,智能的制定该构件。开发环境可制定任何
在别人创建的构件。开发工具只是寻找相关的制定器类并在其窗口中创建一个
它的实例,而不必需要其它的。
(3)自查
对于能在开发环境中复用的 Java构件,需要有查询一个 bean能做些什么和产生
和监听事件的类型。在JavaBeans 规范中,这被称为规范并且是Java提供的
基本的反映机制的扩展。 反映机制允许运行状态进行查询以得到对象的类并由此
得到其公开的方法和变量。bean 的自查机制进行了扩展,查找指定的设计方式的
使用。通过BeanInfo 类,bean 作者可以暴露要暴露的公共方法和变量。 当作为
构件复用现存 Java代码时, BeanInfo类也是很有用的。编程人员可用创建一个
BeanInfo类,具体指定要用到的得到和设置属性的方法名,由此覆盖缺省的自查。
(4)打包
JavaBean构件常被打包为JAR 文件。JAR 的格式允许构件作为一个单独的实体,
随同其支持类 (如制定编辑器、 BeanInfo和其它资源文件 )被打包。开发环境必须
了解 JAR的格式并使用其 manifest文件一个 JAR中所包括的 bean。 包含一个JavaBean
构件的JAR 还可能包括该构件的序列化版本。若这个持续的实例存在,便使用它。这样
提供商就可以发布该构件的可用的或制定好的版本。