JavaBean在JSP中的.ppt_第1页
JavaBean在JSP中的.ppt_第2页
JavaBean在JSP中的.ppt_第3页
JavaBean在JSP中的.ppt_第4页
JavaBean在JSP中的.ppt_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章 JavaBean在JSP中的应用,本章主要内容: 7.1 JavaBean概述了解 7.2 在JSP中使用JavaBean重点 7.3 JSP动作与JavaBean的生命周期重点 7.4 封装数据的JavaBean重点 7.5 封装业务逻辑的JavaBean难点 7.6 JavaBean的其他应用了解,JavaBean 组件:是一些可移植、可重用,并可以组装到应用程序中的 Java 类。 作用:将JavaBean与 JSP 语言元素一起使用,可以很好地实现后台业务逻辑和前台表示逻辑的分离,使得JSP页面更加可读、易维护 。,7.1 JavaBean 组件概述,符合下面的设计规则任何 Java 类都是一个 JavaBean: (1)对于类的每个可读属性,Bean 必须有下面签名的一个方法: public 类型 getProperty( ) (2)对于类的每个可写属性,Bean 必须有下面签名的一个方法: public void setProperty(proptype x) (3)定义一个不带任何参数的构造函数。,JavaBean 的代码结构,一个简单的JavaBean举例,Student.java public class Student privat long classno; privat String name; 说明:类的定义中必须包含: 无参数的构造函数; 所有属性的set方法和get方法。,添加JavaBean成员变量读写方法,经过分析发现:用户使用浏览器对网页进行浏览等操作,本质上是对数据的操纵或执行某种业务逻辑。 因此,在编写JSP程序之前,应该首先进行实体的抽象,对实体的抽象,其实就是设计JavaBean(类)。,7.2 在JSP中使用JavaBean,举例说明JavaBean在JSP中的应用,例:7-2 定义User类,在7-2-1.jsp中创建类的对象,并调用相关方法输出成员变量的值。在7-2-2.jsp及7-2-3.jsp中演示了User类作为一个被绑定的session的用法。程序如下: User.java 7-2-1.jsp 7-2-2.jsp 7-2-3.jsp,JSP页面中与JavaBean有关的动作元素有3个: ,7.3 JSP动作元素与JavaBean生命周期,:声明一个具有一定生存范围及一个唯一id的JavaBean的实例,JSP页面通过id来识别JavaBean,并可通过id.method类似的语句来操作JavaBean。 例如,下面的标记在应用程序作用域中,声明了类型 Student、id为s1的 bean: ,:用来返回一个已被创建的bean组件的属性值。 用法如下: ,:用来设定一个已被创建的bean组件的属性值, 用法如下: ,除了利用标记和直接调用JavaBean对象的方法来设置JavaBean属性外,还可以利用request对象中的参数值来设置JavaBean属性。 语法如下: 注意,如果参数值为空值,那么对应的属性值不会被设定。另外,不能在同一个“”中同时使用param和value参数 。,每个JavaBean都有一个生存范围,Bean只有在它定义的范围里才能使用,在它的活动范围外将无法访问到它。利用Scope属性来声明JavaBean的生存范围。 JSP为它设定的范围有: page request Session application,page:Bean的缺省使用范围。 Scope值为page的Bean能在包含“”元素的JSP文件及此文件中的所有静态包含文件中使用,直到页面执行完毕向客户端发回响应或转到另一个文件为止。,request: 作用于任何相同请求的JSP文件中,直到页面执行完毕向客户端发回响应或在此这之前已通过某种方式(如重定向、链接等方式)转到另一个文件为止。还可通过使用request对象访问bean,如:request.getAttribute(beanName)。,session: 从创建Bean开始,就能在任何使用相同session的JSP文件中使用这个Bean。这个Bean存在于整个session生存周期内,任何分享此session的JSP文件都能使用同一Bean。在session的生存周期内,对此bean属性的任何改动,都会影响到在此session内的任意page、任意request对此bean的调用。 前提是必须在创建此Bean的文件里事先用page指令指定了session=true。,application: 作用于整个application的生存周期内,从创建Bean开始,就能在任何使用相同application的JSP文件中使用Bean。这个Bean存在于整个application生存周期内,任何在分享此application的JSP文件都能使用同一Bean。在application周期内,对此bean属性的任何改动,都会影响到此application内另一page、另一request及另一session里对此bean的调用。,题目:修改7-2的代码,使用、标记在一个JSP页面上实例化User类对象,同时设置并显示该对象的信息。,举例:7-3,7.4 封装数据的JavaBean,JavaBean本质上就是一个Java类,封装数据的JavaBean就是一个包含了若干个属性的Java类。 可以将表单中输入的值写入JavaBean中的对应属性里。 详见例7-4及例7-5.,7.5 封装业务逻辑的JavaBean,狭义上的JavaBean用于封装数据,广义上的JavaBean用于封装业务逻辑,即处理过程,调用一个JavaBean,相当于完成了一次业务处理(功能任务)。 详见例7-6.,举例 7-6,题目:计算器Calculator的JavaBean,封装了加、减、乘、除4种操作,并在JSP中进行调用,实现两个数的任务一种操作。 7-6.jsp,例7-6:运行界面,举例:7-7,题目:创建一个JavaBean类,用于封装查询pubs数据库中employee表全部记录数据的数据访问操作。,7.6 JavaBean的其他应用,使用JavaBean实现数据分页显示 基于JavaMail的邮件发送JavaBean 基于JSPSmartUpload的文件上传JavaBean 基于JGraph的验证码JavaBean,1.使用JavaBean实现数据分页显示,在对数据库进行查询的过程中,查询结果比较多时,经常会用到分页显示技术。 常用的分页方法有两个: 一次性将所有数据查询出来放在缓存中,后面根据用户的请求加载指定页面; 在用户发出查看页面请求时查询某个指定页面。,分页时结果集ResultSet常用的方法,分页显示常用的记录结果集方法: next( ): 移动到下一条 absolute( int n):移动到指定行。 分页显示举例: 例7-10:设计一个JavaBean,用于封装分页算法业务逻辑,然后在JSP页面中使用该JavaBean实现分页显示功能。,2.基于JavaMail的邮件发送JavaBean,JavaMail是Sun公司发布的处理电子邮件的应用程序接口(编程类库API),包含在JavaMail.jar包中。 在编写JavaMail程序时,需要首先将JavaMail.jar包下载下来,并导入到项目中。,Java Mail 编程API,核心Java Mail API 可以分为两部分,一部分由七个主要对象组成:Session、Message、Address、Authenticator、Transport、Store 和Folder,利用这些对象可以完成包括发送消息、检索消息、删除消息、认证、回复消息、转发消息、管理附件、处理基于HTML 文件格式的消息及搜索或过滤邮件列表等任务 核心Java Mail API 的另一部分为主要接口和类:Part、Message、Bodypart、Multipart、MimePart、MimeMessage、MimiBodypart 和MimeMultipart,可以用这些类和接口完成电子邮件的阅读、撰写等任务。,Java Mail API七大核心对象,1)javax.mail.Session Session对象用java.util.Properties对象获取信息,如邮件服务器、用户名、密码及整个应用程序中共享的其他信息。 2)javax.mail.Message 一旦获得Session对象,就要使用Message或其子类MimeMessage来创建要发送的消息对象。,3)javax.mail.Address 创建了Session和Message,就可以使用Address类确定信件的地址,经常使用其子类InternetAddress类。 4)java.mail.Authenticator 可以使用该类对进行了密码保护的SMTP服务器的资源访问。 5)java.mail.Transport 用于消息的发送,最重要的发法是send( ).,6)javax.mail.Store 实现特定邮件协议上的读、写、监视、查找等操作。 7)javax.mail.Folder 用于分级组织邮件,并提供按照javax.mail.Message格式访问E-mail的能力。,JavaMail编程举例,例7-9: Email.java:发送邮件的JavaBean Email.jsp:使用JavaBean的jsp界面。,3.基于JSPSmartUpload的文件上传JavaBean,JSPSmartUpload是由网站开发的一个可免费使用的全功能的文件上传下载组件,适于嵌入执行上传下载操作的JSP文件中。 该组件有以下几个特点: 1、使用简单。在JSP文件中仅仅书写三五行JAVA代码就可以搞定文件的上传或下载,方便。 下来。,2、能全程控制上传。利用jspSmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。 3、能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求的文件。 4、下载灵活。仅写两行代码,就能把Web服务器变成文件服务器。不管文件在Web服务器的目录下或在其它任何目录下,都可以利用jspSmartUpload进行下载。 5、能将文件上传到数据库中,也能将数据库中的数据下载.,JSPSmartUpload的文件上传,举例:例7-11 下载的com.jspsmart.upload包 Upload.jsp,4.基于JGraph的验证码JavaBean,JGraph需要jgraph.jar包,可以在网站上下载; JGraph将图元定义为一个一个的cell,每个cell可以是一个顶点(Vertex)、边(Edge)或者节点(Port)中的一种。顶点可以有邻接的顶点,他们通过边相联系,边联接的两个端点称为目标和源,每个目标或者

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论