·JavaBean是一种可重用的组件技术,可以将内部动作封装起来,用户不需要了解其如何运行,只需要知道如何调用及处理它对外提供的方法。在网站开发中,使用JavaBean可以简化JSP页面的设计与开发,提高代码可读性,从而提高网站的可维护性。

1.什么是JavaBean?
·按照Sun公司的定义,JavaBean可理解为一个可重复使用的软件组件。从本质上来说,JavaBean是一种Java类,它通过封装属性和方法成为具有独立功能、可重复使用、并且可与其他控件通信的组件对象。JavaBean是基于Java语言的,因此它不依赖平台。
·JavaBean简称bean,分为可视化组件和非可视化组件两类,在JSP中主要使用非可视化组件。非可视化的JavaBean就是没有GUI图形用户界面的JavaBean,在JSP程序中常用于封装事务逻辑和数据库操作等。它可以很好地实现业务逻辑和前台程序的分离,使系统具有更好的健壮性和灵活性。
·用户可把JavaBean想象为功能特定,且可重复使用的子程序。当应用程序需要提供相同的特定功能时,只需直接引用JavaBean组件即可。对于用户来说,一般并不需要知道JavaBean的内部结构,只需要知道它对外提供的哪些方法可供使用即可。
·大型JSP应用系统常用JavaBean组件将所有包含运算逻辑的程序代码封装起来,画面数据的输出与展示部分则交由JSP网页程序来处理。这样当JSP网页需要JavaBean组件的功能时,只需在网页中直接引用该组件即可,这就有效简化了JSP程序结构,同时也使得应用程序的扩充与修改更加灵活。

2.JavaBean的特点
编写JavaBean就是编写一个Java类,一般只要会写类就能编写JavaBean。标准的JavaBean类必须满足以下3个条件。
(1)类中声明的构造方法必须是public的,并且无参数。例如,一个Java类名为UserBean,则该类必须包含public UserBean()这个不带有参数的构造函数。
(2)该类必须有属性接口。就是说,每个属性都要有get()和set()的属性操作方法。例如,一个描述用户信息的JavaBean,它的用户年龄属性是userAge,那么必须提供getUserAge()和setUserAge()这两个方法。就是说,方法名以get或set为前缀,后缀是将成员变量名的首字母大写的字符序列。
(3)类中声明的访问属性的方法必须是public的。
下面列举了一个JavaBean源文件。

package servlet;
 public class UserBean {
 private String name;
 private String password;
 private String phone;
 private String address;
 private int age;
 public String getName() {
 return name;
 }
 public void setName(String name) {
 this. name = name;
 }
 public String getPassword() {
 return password;
 }
 public void setPassword(String password) {
 this.password = password;
 }
 public String getPhone() {
 return phone;
 }
 public void setPhone(String phone) {
 this.phone = phone;
 }
 public String getAddress() {
 return address;
 }
 public void setAddress(String address) {
 this.address = address;
 }
 public int getAge() {
 return age;
 }
 public void setAge(int age) {
 this.age = age;
 }
 }


·在动态网站开发中,JavaBean是用来描述业务对象的Java类,例如一个书籍销售系统,可能包含用户、图书、订单等业务对象,而每个业务对象都需要制作一个相应的JavaBean类。例如,上面的类就是针对用户信息的JavaBean,里面包含name,password,phone,address和age共5个属性,每个属性都有get()和set()方法。

3.实例

使用MyEclipse创建一个JavaBean文件。本实例以前面创建的UserBean为例,详细介绍如何在MyEclipse中创建一个JavaBean。

步骤1: 打开第1章创建的项目ex1-1,新建一个Name为UserBean的类,设置Package为com.jqe.test.bean,此时MyEclipse左侧窗口中显示项目结构,右侧会自动打开新建的Java类。

javabean与javabeans区别 javabean是_Java


步骤2: 在打开的UserBean类中输入上面UserBean的属性,并且每个属性都设置成私有属性,使这些属性只能被本类访问到,外部类想要获取或者修改UserBean属性,只能通过get和set方法,修改结果如图。

javabean与javabeans区别 javabean是_set方法_02


步骤3: 创建set和get方法。使用MyEclipse集成开发工具创建JavaBean,可以通过开发工具的菜单功能生成相关代码,在图所示界面中UserBean的大括号中右击鼠标,在弹出的快捷菜单中选择Source>Generate Getters and Setters…,之后打开Generate Getters and Setters对话框。

javabean与javabeans区别 javabean是_封装_03


步骤4: 单击对话框右上角的Select All按钮,程序会自动选中所有属性的get和set方法,单击下方的OK按钮,MyEclipse会自动生成所有属性的get和set方法,如图所示。至此JavaBean创建完成,当然如果有特殊需求,可以添加其他方法。

javabean与javabeans区别 javabean是_set方法_04