每一个JavaBean源文件被编译成.class文件后 , 都必须存放在相应的文件夹下 , 存放这个.class文件的文件夹就是一个包 。JavaBean的包必须存放在特定的目录下 , 在每个JSP引擎中都规定了存放JavaBean包的位置 , 不同的JSP引擎对JavaBean存放的位置有不同的规定 , 如在Tomcat中 , JavaBean的所有包都存放在WEB-INF/classes文件夹中 。如果存在多级目录 , 则需要将.class文件所在目录的所有上级目录包含到包名称中 , 每一级目录之间用英文标点“.”隔开 。例如下面代码:packagejsp.example.mybean;
2.5. Java Bean的结构
(1)属性:即Java Bean类的成员变量 , 用于描述JavaBean对象的状态 , 对象属性值的改变触发事件 , 属性本身就是事件源 。
(2)方法:在Java Bean中 , 函数和过程统称为方法 , 通过方法来改变和获取属性的值 。方法可以分为构造方法、访问方法和普通方法等 。
(3)事件:事件实际上是一种特殊的Java Bean , 属性值的改变触发事件 , 事件激发相关对象作出反应 , 通过Java Bean注册对象事件监听者机制来接收、处理事件 , 它实现了Java Bean之间的通信 。
三. Java Bean属性
在上一节中我们简单提到了JavaBean的属性 , Java Bean的属性与一般Java程序中所指的属性 , 或者说与所有面向对象的程序设计语言中对象的属性是一个概念 , 在程序中的具体体现就是类中的变量 。属性分为四类 , 即单值(Simple)、索引(Index)、关联(Bound)和约束(Constrained)属性 。本节将对这些属性进行详细说明 。
3.1. 单值(simple)属性
单值(Simple)属性是最普通的属性类型 , 该类属性只有一个单一的数据值 , 该数据值的数据类型可以是Java中的任意数据类型 , 包括类和接口等类型 。
定义了属性 , 还需定义对应的访问方法 , 一般每个单值属性都伴随有一对get/set方法 。属性名与和该属性相关的get/set方法名对应 。例如如果有一个名为“xxx”的属性 , 则会有setXxx和getXxx方法 。
另外 , 布尔(Boolean)属性是一种特殊的单值属性 , 它只有两个允许值:true和false , 如果有一个名为“xxx”的布尔属性 , 则可以通过isX方法访问 。
3.2. 索引(Indexed)属性
如果需要定义一批同类型的属性 , 使用单值属性就会显得非常烦琐 , 为解决此问题 , JavaBean中提供了索引(Indexed) 属性 , 索引属性是指JavaBean中数组类型的成员变量 。使用与该属性对应的set/get方法可取得数组的值 。索引属性通过对应的访问方法设置或取得该属性中某个元素的值 , 也可以一次设置或取得整个属性的值 。
3.3. 关联(Bound)属性
关联(Bound)属性是指当该种属性的值发生变化时 , 要通知其他的对象 。每次属性值改变时 , 这种属性就触发一个PropertyChange事件(在Java程序中 , 事件也是一个对象) 。事件中封装了属性名、属性的原值、属性变化后的新值 。这种事件传递到其他的Beans , 至于接收事件的Beans应做什么动作 , 由其自己定义 。
属性的改变称为JavaBean事件 。外部与Java Bean这些事件相关的类对象称为监听者(Listener) 。监听者可能只对JavaBean某一属性相关的事件有兴趣 , 也可能对所有属性相关的事件有兴趣 , 因此JavaBean提供两类事件监听者注册和注销的方法 , 即全局事件监听者注册、注销的方法和一般事件监听者注册、注销的方法 。
推荐阅读
- 缱绻是什么意思,怎么读?
- 高渐离和栎阳公主是真的吗
- 貂蝉之死真相揭秘 貂蝉古尸复原图让人不寒而栗
- 李嘉图比较成本理论的主要内容,新贸易理论
- oa办公系统大概多少钱 oa办公系统软件哪家好
- crm客户管理系统哪个好用?附:crm客户管理系统推荐
- 删除的数据恢复软件有免费的吗?这款数据恢复软件,免费还好用
- 桃花源记描绘的并非人间仙境?桃花源记的恐怖真相是什么
- 魅力的意思是什么?体现在哪些方面?
