《JavaBean使用》PPT课件

上传人:壹****1 文档编号:578968798 上传时间:2024-08-25 格式:PPT 页数:32 大小:406KB
返回 下载 相关 举报
《JavaBean使用》PPT课件_第1页
第1页 / 共32页
《JavaBean使用》PPT课件_第2页
第2页 / 共32页
《JavaBean使用》PPT课件_第3页
第3页 / 共32页
《JavaBean使用》PPT课件_第4页
第4页 / 共32页
《JavaBean使用》PPT课件_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《《JavaBean使用》PPT课件》由会员分享,可在线阅读,更多相关《《JavaBean使用》PPT课件(32页珍藏版)》请在金锄头文库上搜索。

1、第6章 JavaBean组件程序设计 内容提要内容提要n简要介绍简要介绍组件的基本概念组件的基本概念nJavaBean的编写以及调用方法的编写以及调用方法nJavaBean的属性的属性本章主要介绍组件开发技术本章主要介绍组件开发技术组件技术概述组件技术概述 n现在软件开发都已经转向了现在软件开发都已经转向了基于组件的开发基于组件的开发,目前,目前具备代表性的组件技术:具备代表性的组件技术:n微软的微软的COM、COM+nSun的的JavaBean和和EJB(Enterprise Java Bean)nCORBA(Common Object Request Broker Architecture

2、,公共对象请求代理结构),公共对象请求代理结构)n本节主要介绍:本节主要介绍:n组件和容器组件和容器nBean开发工具开发工具nJavaBean简介简介组件和容器组件和容器 n容器是包含其它组件的组件。容器是包含其它组件的组件。它们被用作组件的框架。例如,它们被用作组件的框架。例如,可视化的开发工具使你能拖放组件到容器中,这些容器能调可视化的开发工具使你能拖放组件到容器中,这些容器能调整大小和位置。整大小和位置。n软件组件模型软件组件模型描述了如何开发和使用组件。软件组件模型包描述了如何开发和使用组件。软件组件模型包括以下元素:括以下元素: n创造和使用组件的规范;创造和使用组件的规范;n软件

3、实现规范,为建造和使用组件提供一种具体的机制。软件实现规范,为建造和使用组件提供一种具体的机制。nJavaBean规范规范将将“软件组件软件组件”的概念引入到的概念引入到Java编程的编程的领域。领域。组件是自包含的、可重用的软件单元;组件是自包含的、可重用的软件单元;JavaBean规规范为范为Java开发人员提供了一种开发人员提供了一种“组件化组件化”其其Java类的方法。类的方法。Bean开发工具开发工具 nJavaSoft,开发,开发Java系列开发工具的公司,开发了系列开发工具的公司,开发了BDK (Bean开发工具开发工具)。 BDK可供开发者自由地使用,适用于可供开发者自由地使用

4、,适用于Windows 2000、XP、2003、以及、以及Solaris 2.4和和2.5。n其它用于其它用于Bean开发的各种工具,常用的有开发的各种工具,常用的有7个。个。nSun MicroSystems公司的公司的JavaPlan;nSun MicroSystems公司的公司的Java Studio;nSun MicroSystems公司的公司的Java Workshop ;nIBM的的Visual Age for Java ;nSymantec的的Visual Caf for Java ;n微软公司的微软公司的Visual J+;nBoland公司的公司的Jbuilder。Java

5、Bean简介简介 nJavaBean是一种软件组件模型。它与其它软件对象相互作是一种软件组件模型。它与其它软件对象相互作用,决定如何建立和重用软件组件。用,决定如何建立和重用软件组件。这些可重用软件组件被这些可重用软件组件被称之为称之为Bean。n在在Sun公司的公司的Java Bean规范的定义中规范的定义中,Bean的正式说法的正式说法是是:“Bean是一个基于是一个基于Sun公司的公司的JavaBean规范的、可在规范的、可在编程工具中被可视化处理的可复用的软件组件编程工具中被可视化处理的可复用的软件组件”。n因此因此JavaBean具有具有4个基本特性个基本特性:(:(1)独立性()独

6、立性(2)可重)可重用性(用性(3)在可视化开发工具中使用()在可视化开发工具中使用(4)状态可以保存)状态可以保存JavaBean简介简介 JSP较其他同类语言最强有力的方面就是能够使用较其他同类语言最强有力的方面就是能够使用JavaBean组件组件,JavaBean组件就是利用组件就是利用Java语言编写的组件,它好比一个封装好的容器,语言编写的组件,它好比一个封装好的容器,使用者并不知道其内部是如何构造的,但它却具有适应用户要求的功能。使用者并不知道其内部是如何构造的,但它却具有适应用户要求的功能。每个每个JavaBean都实现了一个特定的功能,通过合理地组织不同功能的都实现了一个特定的

7、功能,通过合理地组织不同功能的JavaBean,可以快速生成一个全新的应用程序。如果将一个应用程序比做可以快速生成一个全新的应用程序。如果将一个应用程序比做一间空房间,那么这些一间空房间,那么这些JavaBean就好比房间中的家具。就好比房间中的家具。 使用使用JavaBean的最大优点就在于它可以提高代码的重用性的最大优点就在于它可以提高代码的重用性,例如正在开发,例如正在开发一个商品信息显示界面,由于商品信息存放在数据库指定表中,此时需要执一个商品信息显示界面,由于商品信息存放在数据库指定表中,此时需要执行连接数据库、查询数据库、显示数据操作,如果将这些数据库操作代码都行连接数据库、查询数

8、据库、显示数据操作,如果将这些数据库操作代码都放入放入JSP页面中,代码复杂度可以想象,非编程人员根本无法接收这样的代页面中,代码复杂度可以想象,非编程人员根本无法接收这样的代码,这将为开发带来极大的不便。码,这将为开发带来极大的不便。编写一个成功的编写一个成功的JavaBean,宗旨是宗旨是“一次性编写,任何地方执行,任何地一次性编写,任何地方执行,任何地方重用方重用”,这正迎合了当今软件开发的潮流,这正迎合了当今软件开发的潮流,“简单复杂化简单复杂化”,将复杂需求,将复杂需求分解成简单的功能模块,这些模块是相对独立的,可以继承、重用,这样为分解成简单的功能模块,这些模块是相对独立的,可以继

9、承、重用,这样为软件开发提供了一个简单、紧凑、优秀的解决方案。软件开发提供了一个简单、紧凑、优秀的解决方案。JavaBean编程编程 nJavaBean分成分成可视组件可视组件和和非可视组件非可视组件。n在在JSP中主要使用非可视组件,中主要使用非可视组件,它又分为值它又分为值JavaBean和工和工具具JavaBean。对于非可视组件,不必去设计它的外观,主对于非可视组件,不必去设计它的外观,主要关心它的属性和方法。要关心它的属性和方法。n无论哪一种无论哪一种JavaBean,当它们被编译成,当它们被编译成Class文件后,文件后,需要需要放在项目中的放在项目中的WEB-INFclasses

10、目录下,才可以在目录下,才可以在JSP页页面中被调用。面中被调用。n本节内容本节内容nJavaBean的特点的特点nJavaBean页面指令页面指令nJavaBean编写及使用编写及使用nJavaBean的属性的属性JavaBean编程编程 nJavaBean分成分成可视组件可视组件和和非可视组件非可视组件。n在在JSP中主要使用非可视组件,对于非可视组件,不必去设中主要使用非可视组件,对于非可视组件,不必去设计它的外观,主要关心它的属性和方法。计它的外观,主要关心它的属性和方法。n无论哪一种无论哪一种JavaBean,当它们被编译成,当它们被编译成Class文件后,文件后,需要需要放在项目中

11、的放在项目中的WEB-INFclasses目录下,才可以在目录下,才可以在JSP页页面中被调用。面中被调用。n本节内容本节内容nJavaBean的特点的特点nJavaBean页面指令页面指令nJavaBean编写及使用编写及使用nJavaBean的属性的属性JavaBean的特点的特点 nJavaBean是符合特殊规范是符合特殊规范Java类,类,所以只要会写类就能编所以只要会写类就能编写写Bean。n一个完整一个完整JavaBean在类的命名上需要遵守在类的命名上需要遵守4点:点:n1、如果类的成员变量的名字是、如果类的成员变量的名字是xxx,那么为了更改或获取成,那么为了更改或获取成员变量

12、的值,在类中使用两个方法:员变量的值,在类中使用两个方法:ngetXxx(),用来获取属性,用来获取属性xxx。nsetXxx(),用来修改属性,用来修改属性xxx。n2、对于、对于boolean类型的成员变量,允许使用类型的成员变量,允许使用is代替代替get。n3、类中方法的访问属性必须是、类中方法的访问属性必须是public的。的。n4、类中如果有构造方法,那么这个构造方法也是、类中如果有构造方法,那么这个构造方法也是public的,的,并且是无参数的。并且是无参数的。编写编写JavaBean 案例名称:简单的案例名称:简单的JavaBean程序名称:程序名称:j6_01.javapac

13、kage Bean;import java.io.*;public class j6_01 int radius;public j6_01() /构造方法构造方法radius=1;public int getRadius()/获取成员变量的值获取成员变量的值return radius;public void setRadius(int newRadius)/更改成员变量的值更改成员变量的值radius=newRadius;public double circleArea() return Math.PI*radius*radius;public double circlLength()retu

14、rn 2.0*Math.PI*radius;JavaBean页面指令页面指令 n在在JSP中专门提供三个页面指令来和中专门提供三个页面指令来和JavaBean交互,分别交互,分别是:是:njsp:useBean指令:指令:指定指定JSP页面中包括的页面中包括的JavaBeannjsp:setProperty指令:指令:设置设置JavaBean的属性的属性njsp:getProperty指令:指令:得到某个得到某个JavaBean的属性值的属性值JavaBean页面指令页面指令nid是当前页面中引用是当前页面中引用JavaBean的名字,的名字,JSP页面中的页面中的Java代代码将使用这个名字

15、来访问码将使用这个名字来访问JavaBean。nscope:指定:指定JavaBean的作用范围,可以取的作用范围,可以取4个值。个值。npage:JavaBean只能在当前页面中使用。在只能在当前页面中使用。在JSP页面执行完毕后,页面执行完毕后,该该JavaBean将会被进行垃圾回收。将会被进行垃圾回收。nrequest:JavaBean在相临的两个页面中有效。在相临的两个页面中有效。nsession:JavaBean在整个用户会话过程中都有效。在整个用户会话过程中都有效。napplication:JavaBean在当前整个在当前整个Web应用的范围内有效。应用的范围内有效。n jsp:u

16、seBean指令指定指令指定JSP页面中包括的页面中包括的JavaBean,具体,具体的语法格式为:的语法格式为:JavaBean的作用域 applicationsessionpagerequestpage作用域 page作用域在这作用域在这4种类型中范围是最小的种类型中范围是最小的,客户端每次请求访问,客户端每次请求访问时都会创建一个时都会创建一个JavaBean对象。对象。JavaBean对象的对象的有效范围是客户请有效范围是客户请求访问的当前页面文件,当客户执行当前的页面文件完毕后求访问的当前页面文件,当客户执行当前的页面文件完毕后JavaBean对象结束生命。对象结束生命。 在在pag

17、e范围内,每次访问页面文件时都会生成新的范围内,每次访问页面文件时都会生成新的JavaBean对对象,原有的象,原有的JavaBean对象已经结束生命期。对象已经结束生命期。 返回request作用域 当当scope为为request时,时,JavaBean对象被创建后,它将对象被创建后,它将存在于整个存在于整个request的生命周期内的生命周期内,request对象是一个内建对象,使用它的对象是一个内建对象,使用它的getParameter方法可以获取表单中的数据信息。方法可以获取表单中的数据信息。 Request范围的范围的JavaBean与与request对象有着很大的关系,它的存对象

18、有着很大的关系,它的存取范围除了取范围除了page外,还包括使用动作元素外,还包括使用动作元素和和包含的网页,所有通过这两个操作指令连接在一起的包含的网页,所有通过这两个操作指令连接在一起的JSP程序都可以共享同一个程序都可以共享同一个JavaBean对象。对象。 返回session作用域 当当scope为为session时,时,JavaBean对象被创建后,它对象被创建后,它将存在于整个将存在于整个session的生命周期内的生命周期内,session对象是一个内建对象,当用户使用浏览对象是一个内建对象,当用户使用浏览器访问某个网页时,就创建了一个代表该链接的器访问某个网页时,就创建了一个代

19、表该链接的session对象,同一个对象,同一个session中的文件共享这个中的文件共享这个JavaBean对象。客户对应的对象。客户对应的session生命期结生命期结束时束时JavaBean对象的生命也结束了。对象的生命也结束了。 在同一个浏览器内,在同一个浏览器内,JavaBean对象就存在于一个对象就存在于一个session中。当重中。当重新打开新的浏览器时,就会开始一个新的新打开新的浏览器时,就会开始一个新的session。每个每个session中拥有中拥有各自的各自的JavaBean对象。对象。 返回application作用域 当当scope为为application时,时,J

20、avaBean对象被创建后,它将对象被创建后,它将存在于整存在于整个主机或虚拟主机的生命周期内,个主机或虚拟主机的生命周期内,application范围是范围是JavaBean的生命的生命周期最长的周期最长的。同一个主机或虚拟主机中的所有文件共享这个。同一个主机或虚拟主机中的所有文件共享这个JavaBean对象。对象。 如果服务器不重新启动,如果服务器不重新启动,scope为为application的的JavaBean对象会一对象会一直存放在内存中,随时处理客户的请求,直到服务器关闭,它在内存直存放在内存中,随时处理客户的请求,直到服务器关闭,它在内存中占用的资源才会被释放。中占用的资源才会被

21、释放。在此期间,服务器并不会创建新的在此期间,服务器并不会创建新的JavaBean组件,而是创建源对象的一个同步拷贝,任何拷贝对象发生组件,而是创建源对象的一个同步拷贝,任何拷贝对象发生改变都会使源对象随之改变,不过这个改变不会影响其它已经存在的改变都会使源对象随之改变,不过这个改变不会影响其它已经存在的拷贝对象。拷贝对象。 返回JavaBean的作用域示例(1)通过下面的实例说明4个作用域:首先,创建一个JavaBean:“Scope.java” 。package scope;public class Scope public Scope() /无参的构造函数private int numb

22、er=0; /初始化变量number的值为0public int getNmuber() /增加并返回变量number的值number+;return number; public void setNumber(int newNumber) this.number = newNumber; /给变量number赋新值 JavaBean的作用域示例(2) 然后,创建名称为“scope.jsp”的页面文件,用来显示JavaBean存在的范围的具体区别。主要代码: JavaBean的作用域示例(3)程序运行结果如图1所示: 关闭该浏览器,重新打开新的浏览器后的结果如图2所示: 图1图2返回调用调用J

23、avaBean 案例名称:调用案例名称:调用JavaBean方法一方法一程序名称:程序名称:j6_02.jsp 圆的半径是:圆的半径是: 圆的周长是:圆的周长是: 圆的面积是:圆的面积是: 调用调用JavaBean 案例名称:调用案例名称:调用JavaBean方法二方法二程序名称:程序名称:j6_03.jsp 圆的半径是:圆的半径是: 圆的周长是:圆的周长是: 圆的面积是:圆的面积是: 调用调用JavaBean 案例名称:调用案例名称:调用JavaBean方法三方法三程序名称:程序名称:j6_04.jsp 圆的半径是:圆的半径是: 圆的周长是:圆的周长是: 圆的面积是:圆的面积是: JavaB

24、ean的属性的属性 n通用通用Bean属性的类型有四种:简单属性、关联属性、属性的类型有四种:简单属性、关联属性、受限属性和索引索性。受限属性和索引索性。n简单简单(Simple)属性属性:该属性解释怎样把属性赋予:该属性解释怎样把属性赋予Bean。n关联关联(Bound)属性:一个属性:一个Bound属性是指当该种属性的值发属性是指当该种属性的值发生变化时,要通知其它的对象。生变化时,要通知其它的对象。n受限受限(Constrained)属性:指当这个属性的值要发生变化时,属性:指当这个属性的值要发生变化时,与这个属性已建立了某种连接的其它与这个属性已建立了某种连接的其它Java对象可以否决

25、属性对象可以否决属性值的改变。值的改变。n索引索引(Indexed)属性:一个属性:一个Indexed属性可描述多值的属性,属性可描述多值的属性,用一个数组表示。用一个数组表示。n其中绑定属性和约束属性通常在其中绑定属性和约束属性通常在JavaBean的图形编程的图形编程中使用。中使用。JavaBean的属性的属性 nJSP中只使用简单属性中只使用简单属性,并利用,并利用jsp:setProperty来来设置属设置属性的值,性的值,jsp:getProperty来来得到该属性的值。得到该属性的值。简单属性就是在简单属性就是在JavaBean中对应了简单的中对应了简单的setXxx()和和get

26、Xxx()方法的变量,在创建方法的变量,在创建JavaBean时,简单属性最为常用。时,简单属性最为常用。在在JavaBean中,简单属性的中,简单属性的getXxx()与与setXxx()方法如下:方法如下:public void setXxx(type value);public type getXxx(); 其中其中type表示属性的数据类型,若属性为布尔类型,表示属性的数据类型,若属性为布尔类型,则可使用则可使用isXXX()方法代替方法代替getXxx()方法。方法。JavaBean的属性的属性案例名称:带属性的案例名称:带属性的JavaBean程序名称:程序名称:j6_05.jav

27、apackage sample;public class j6_05private String sample1 = Start value1;private String sample2 = Start value2; public String getSample1() return sample1;public void setSample1(String newValue) if(newValue != null) sample1 = newValue;public String getSample2() return sample2;public void setSample2(St

28、ring newValue) if(newValue != null) sample2 = newValue;JavaBean的属性的属性案例名称:修改案例名称:修改JavaBean的属性方法一的属性方法一程序名称:程序名称:j6_06.jsp sample1 1. 调用调用jsp:setProperty之前的值:之前的值: 2.调用调用jsp:setProperty之后的值:之后的值: sample2 1.调用调用jsp:setProperty之前的值:之前的值: 2.调用调用jsp:setProperty之后的值:之后的值: JavaBean的属性的属性案例名称:修改案例名称:修改Java

29、Bean的属性方法二的属性方法二程序名称:程序名称:j6_07.jsp 输入输入1:输入输入2: 利用利用Form表单的元素对表单的元素对JavaBean赋值,赋值,需要注意的是表单元素的名字必须和需要注意的是表单元素的名字必须和JavaBean的属性名字一样的属性名字一样,可以,可以对所有的属性赋值对所有的属性赋值: JavaBean的属性的属性案例名称:修改案例名称:修改JavaBean的属性方法三的属性方法三程序名称:程序名称:j6_08.jsp 输入输入1:输入输入2: 利用利用Form表单的元素表单的元素逐一对逐一对JavaBean赋值赋值: 其中,其中,“param=”sample

30、1“”中中“sample1”是表单元素的名称。是表单元素的名称。JavaBean页面指令页面指令 n在在JSP中主要使用非可视组件,中主要使用非可视组件,它又分为它又分为值值JavaBean和工和工具具JavaBean。对于非可视组件,不必去设计它的外观,主对于非可视组件,不必去设计它的外观,主要关心它的属性和方法。要关心它的属性和方法。n值值JavaBeanJavaBean作为信息的容器,通常用来封装表单数据作为信息的容器,通常用来封装表单数据,也就是将用,也就是将用户向表单字段中输入的数据存储到户向表单字段中输入的数据存储到JavaBeanJavaBean对应的属性中。使用值对应的属性中。

31、使用值JavaBeanJavaBean可以减少在可以减少在JSPJSP页面中嵌入大量的页面中嵌入大量的JavaJava代码。代码。n工具工具JavaBeanJavaBean通常用于封装业务逻辑、数据操作等通常用于封装业务逻辑、数据操作等,例如连接数据,例如连接数据库,对数据库进行增、删、改、查和解决中文乱码等操作。使用工库,对数据库进行增、删、改、查和解决中文乱码等操作。使用工具具JavaBeanJavaBean可以实现业务逻辑与前台程序的分离,提高了代码的可可以实现业务逻辑与前台程序的分离,提高了代码的可读性与易维护性。读性与易维护性。n无论哪一种无论哪一种JavaBean,当它们被编译成,当它们被编译成Class文件后,文件后,需需要放在项目中的要放在项目中的WEB-INFclasses目录下,才可以在目录下,才可以在JSP页面中被调用。页面中被调用。JavaBean常用实例常用实例 解决中文乱码 封装数据库操作 数据分页技术

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号