浅谈JavaBean在JSP中的应用
- 格式:pdf
- 大小:261.53 KB
- 文档页数:2
科技信息
浅谈JavaBean在JSP【l】的应用
广西工学院王冬秀
[摘要]本文介绍了JSp: ̄JavaBean组件的基本概念和技术特点,叙述了定义Bean和生成Bean的方法以及如何设置和获得Bean的
属性,并就实例对JavaBean在JSP页面设计和数据库访问中的应用做一个浅述。
[关键"k ̄]JSP(Java Server Pages)JavaBean重用性
0.引言
当今世界,科学技术飞速发展,信息技术日新月异,人们对计算机
软件的品种、数量、功能、质量、成本以及开发时间提出了越来越高的要
求,在软件开发的过程中,尽可能重用已有的软件组件,有助于加快开
发速度、提高软件生产效率,同时也有利于提高软件质量。JavaBean是
用Java语言编写的可以重用的软件组件,其主要特点是可以实现代码
的重复利用,容易编写、容易使用、容易维护;在支持Java的任何平台上
均可工作,不需重新编译;可以在内部、网内、网络之间进行传输,还可
以以其它部件的模式进行工作。当今流行的动态网页制作技术JSP的
一个重要特性就是可以用JavaBean实现功能的扩展。将大部分功能放
在JavaBean中完成,可以减少在JSP中脚本代码的使用,这样使得JSP
页面程序干净简洁、利于维护,易于被非编程人员接受。本文就实例对
JavaBean在JSP中的应用做一个浅述。
1.相关概念和技术简介 1.1 JavaBean概述及用途
按Sun公司的定义,JavaBean是一个可重复使用的软件部件,该部 件可以用来生成其进行可视化处理的组件。JavaBean是Java的组件模
型,在JavaBean规范中定义了事件和属性等特征。它是允许开发者在
开发工具中可视化的操纵组件。JavaBean不但可以用于客户端的开发,
也可作为进行非图形化服务器端Java应用开发的组件模型。JavaBean
是一种Java类,通过封装属性和方法成为具有某种功能或者处理某个 业务的对象。可以将JavaBean看成是一个黑盒子,即只需知道其功能
而不必关心其内部的软件设备,黑盒子只定义和介绍其外部特征和其 它部分的接口。JavaBean有三个接口:( ̄)JavaBean可以调用的方法;②
JavaBean提供的可供读写的属性;③JavaBean向外部发送的或从外部接
受的事件。在JavaBean的实际开发过程中,往往就是分别对这三个接 口进行开发。一般一个标准的JavaBean要求必须有一个不带参数的构
造器;有一组getXXX0公共方法,使得其它的组件或程序可以得到Bean
内部属性的值。同时也有一组相应的setXXX0公共方法来改变Bean内
部属性的值。
在JSP页面里可以调用一个或多个JavaBean。使用标签<jsp:use— Bean>生成一个特定JavaBean的实例。如果这个类的实例已经存在,则
直接使用,否则,创建一个新的实例。要读取JavaBean的属性,可以使
用<jsp:getPropertv>标签,而要设置某个的JavaBean属性值,则可以使用
<jsp:setProperty>标签。
JavaBean传统的应用主要在可视化的领域。如在AwT中的应用。
自从JSP诞生后,JavaBean在非可视化领域得到了广泛地应用,非可视
化JavaBean可用来表示业务逻辑中的实体,即可用来封装数据和功能
等。具体来说,JavaBean在Web应用程序中的用途主要有以下三个:①
用来封装公共的功能:当程序多次调用某些功能时,就可将Bean封装
成一个可重用的构件,这使程序设计更加方便和合理。②用来实现业
务逻辑的实体:一个应用程序可分为业务逻辑层和表现逻辑层。业务
逻辑层一般在后台运行,用来表现应用程序的业务功能,Bean可以较
好地实现业务逻辑部分;表现逻辑层常用XML、HTML、JSP等技术开
发,负责实现页面显示部分。③用来作为程序各部分之间传递数据的
实体:在这种方法中,在一个Bean中设置属性,另一个Bean中包含属
性,其它程序读取Bean的属性获得数据。
1.2 JSP概述 JSP(Java Server Pages)是由Sun公司在Java语言的基础上开发出来
的一种简单快速的动态Web页面制作技术。JSP将Java作为其脚本语
言,在传统HTML文件中加入Java程序片段和JSP标签,因此JSP也继
承了Java语言的各种优点,该技术为创建显示动态生成内容的Web页
面提供了一个简捷而快速的方法。JSP的特点有以下三点:①内容的生
成和显示分离;②强调组件重用,该方法加速了总体开发进程;③与平
台无关。JSP继承了Java技术的平台无关性,具有丰富的和高质量的工
具支持。
2.JavaBean在JSP中的应用
2.1 JavaBean在JSP的页面设计中的应用
在JSP页面设计过程中如何来定义JavaBean?如何减少JSP页面
中Java代码量以使页面简化?现以一个名为rectangle(矩形1的Bean实
例来说明,它有两个属性:length(长)和width(宽)。两个属性由两个set方
法分别设置,由两个get方法提取这两个属性。以下是个Bean的程序代
码,通过在JSP脚本元素中调用Bean的set和get方法来设置和取得
Bean属性。
public class rectangle
{private int length,width;
public rectangle() fthis.1ength=():
this.width=O:1
public void setLength(int L)
{this.1ength=L;)
public int getLength()
{return(this.1ength);】
public void setWidth(intW)
fthis.width=W;} public int getWidth()
f return(this.width);}
) 在以上Bean中,功能的扩展非常容易,如增加求矩形的面积或周
长的方法,同时在JsP页面中使用Bean也可以大大减少代码量,在JSP
使用Bean,必须在JSP设置要引用的Bean,生成Bean的一个实例。可
以用“<jsp:uscBean>”标记来完成 jsp:useBean id=“Name”class=
“testbeau”scope=”application”/>。“<jsp:useBean>”标记是通过id
属性来识别Bean。当指定了id属性后,还需告诉网页面从何处查找
Bean,或者它的Java类别名是什么。最后一个必需的元素是scope属
性。下面是一个应用上述Bean的示例页面:
<HTMI > <BODY>
<%@pagelanguage=”java”%>
<jsp:useBean id=”myrectangle”scope=”app lication”class=”
rectangle”/> <%myrectangle.setLength f10):
myrectangle.setWidth(5);%>
<P>长度:<%=myrectangle.getLength()%>
<br>宽度:<%=myrectangle.getWidth()%>
</p> </BODY> </HTML>
以上代码创建了rectangle的实例一myrectangle,属性在<jsp:use—
Bean>标记内定义,整个JSP页面内Bean的标识为id,Bean的类型由 class属性说明,Bean的生存时间由scope属性定义,取值有以下几种情
况:①Page一表示只有本页面有效。②Request一表示在本次H1rrP请求
中有效。③Session一表示在本次客户对话期内有效,访问该会话,可以
通过隐含对象session来进行。@Webcontext表示把Bean加入Web环境
中,这样应用程序的其它组件使用它。Web环境通过隐含对象applica—
tion来访问。
从以上实例可以看出,在JsP页面设计过程中,使用Bean不仅可以
简化页面代码,使页面程序干净简洁、便于维护,而且可以提高系统的
安全性、代码的保密性,还可以实现功能的扩展。
2.2 JavaBean在JSP对数据库访问中的作用
2.2.1访问架构 使用JSP开发的三层B/S模式中,前台为JSP页面,后台为数据库,
JavaBean是主要的中间层组件,被存储在服务器上,主要负责前台和后
台之间的数据处理和信息交流,它的工作原理为:当有用户向页面发出
请求时,首先调用JavaBean组件中的相应方法,然后将请求传送给
Bean,Bean通过执行一定的程序代码完成一定的任务,进行数据处理
和信息交流,响应前台的请求,并将信息反馈至前台。JSP网页开发技
术的核心和关键是如何编写JavaBean以及调用JavaBean来完成一定的
功能, ̄)JtJBean的重用性。由于数据库的操作都被封装在JavaBean
中,因此数据库的登陆用户名、密码和地址等信息都被封装在应用程序
中,在浏览器上,用户看不到任何对数据库进行操作访问的源代码,这
样提高了访问数据库的安全性,其架构如下图所示:
在对数据库进行访问时,使用以上结构使JSP页面中只需要嵌入
少量的Java代码甚至不使用Java代码,就可对数据库进行处理的Java—
Bean重用,方便进行调试。
以上这种开发模式的特点是:①用JavaBean实现模型:模型中包含
了Web应用程序功能的核心,主要负责存储与应用程序相关的数据,
如商业规则、企业数据等,应用程序的状态得到了集中的体现。在这当
中,JavaBean起的作用是处理事务的数据和逻辑结构,与文件系统和数
据库进行交互,维护应用程序数据等。②用JSP实现视图:所谓视图,
是Web应用程序的外在表现形式,它可以对模型的数据进行访问,但不
能改变这些数据。Web接口的开发人员在设计 (下转第280页)
・-——279・-
——