jsp组件程序设计概要

上传人:今*** 文档编号:107490914 上传时间:2019-10-19 格式:PPT 页数:51 大小:612.50KB
返回 下载 相关 举报
jsp组件程序设计概要_第1页
第1页 / 共51页
jsp组件程序设计概要_第2页
第2页 / 共51页
jsp组件程序设计概要_第3页
第3页 / 共51页
jsp组件程序设计概要_第4页
第4页 / 共51页
jsp组件程序设计概要_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《jsp组件程序设计概要》由会员分享,可在线阅读,更多相关《jsp组件程序设计概要(51页珍藏版)》请在金锄头文库上搜索。

1、第6章 JavaBean组件程序设计,6,内容提要,本章介绍组件开发技术。 简要介绍组件的基本概念 JavaBean的编写以及调用方法 JavaBean的属性 介绍常用的外部组件: 发送Email组件 文件上传 图形组件。 介绍JSP标记库的编写以及使用 介绍Java设计模式以及JSP设计模式。,组件技术概述,现在软件开发都已经转向了基于组件的开发,目前具备代表性的组件技术有微软的COM、COM+, 有Sun的JavaBean和EJB(Enterprise Java Bean),另外还有CORBA(Common Object Request Broker Architecture,公共对象请求

2、代理结构)。,组件和容器,容器是包含其它组件的组件。它们被用作组件的框架。例如,可视化的开发工具使你能拖放组件到容器中,这些容器能调整大小和位置。 软件组件模型描述了如何开发和使用组件。软件组件模型包括以下元素: 创造和使用组件的规范; 软件实现规范,为建造和使用组件提供一种具体的机制。 JavaBean规范将“软件组件”的概念引入到Java编程的领域。组件是自包含的、可重用的软件单元;而JavaBean组件,则可以使用可视的应用程序开发工具,可视地将它们编写到Java程序中。JavaBean规范为Java开发人员提供了一种“组件化”其Java类的方法。,Bean开发工具,JavaSoft,开

3、发Java系列开发工具的公司,开发了BDK (Bean开发工具)。 BDK可供开发者自由地使用,适用于Windows 2000、XP、2003、以及Solaris 2.4和2.5。 其它用于Bean开发的各种工具,常用的有7个。 Sun MicroSystems公司的JavaPlan; Sun MicroSystems公司的Java Studio; Sun MicroSystems公司的Java Workshop ; IBM的Visual Age for Java ; Symantec的Visual Caf for Java ; 微软公司的Visual J+; Boland公司的Jbuilde

4、r。,JavaBean简介,JavaBean是一种软件组件模型。它与其它软件对象相互作用,决定如何建立和重用软件组件。这些可重用软件组件被称之为Bean。Bean使用现有的Bean帮助开发新的计划,进而,建立它们之间的关系。 在Sun公司的Java Bean规范的定义中,Bean的正式说法是:“Bean是一个基于Sun公司的JavaBean规范的、可在编程工具中被可视化处理的可复用的软件组件”。 JavaBean是基于Sun公司的JavaBean规范的,可在编程工具中被可视化处理的可复用的软件组件。因此JavaBean具有4个基本特性:(1)独立性(2)可重用性(3)在可视化开发工具中使用(4

5、)状态可以保存,JavaBean编程,JavaBean分成可视组件和非可视组件。在JSP中主要使用非可视组件,对于非可视组件,不必去设计它的外观,主要关心它的属性和方法。,JavaBean的特点,编写JavaBean就是编写一个Java类,所以只要会写类就能编写一个Bean,一个完整JavaBean在类的命名上需要遵守4点。 1、如果类的成员变量的名字是xxx,那么为了更改或获取成员变量的值,在类中使用两个方法: getXxx(),用来获取属性xxx。 setXxx(),用来修改属性xxx。 2、对于boolean类型的成员变量,允许使用is代替get和set。 3、类中方法的访问属性必须是p

6、ublic的。 4、类中如果有构造方法,那么这个构造方法也是public的,并且是无参数的。,JavaBean页面指令,在JSP中专门提供三个页面指令来和JavaBean交互,分别是jsp:useBean指令、jsp:setProperty指令和jsp:getProperty指令。 jsp:useBean指令指定JSP页面中包括的JavaBean,具体的语法格式为:,JavaBean页面指令,其中,id是当前页面中引用JavaBean的名字,JSP页面中的Java代码将使用这个名字来访问JavaBean。 scope:指定JavaBean的作用范围,可以取4个值。 page:JavaBean只

7、能在当前页面中使用。在JSP页面执行完毕后,该JavaBean将会被进行垃圾回收。 request:JavaBean在相临的两个页面中有效。 session:JavaBean在整个用户会话过程中都有效。 application:JavaBean在当前整个Web应用的范围内有效。 jsp:setProperty指令功能是设置JavaBean的属性。jsp:getProperty操作指令功能是得到某个JavaBean的属性值。,编写JavaBean,案例名称:简单的JavaBean 程序名称:j6_01.java,案例名称:调用JavaBean方法一 程序名称:j6_02.jsp,案例名称:调用J

8、avaBean方法二 程序名称:j6_03.jsp,案例名称:调用JavaBean方法三 程序名称:j6_04.jsp,注意:方法一在有些Tomcat上可能执行失败,方法二和方法三完全通过!,JavaBean的属性,通用Bean属性的类型有四种:简单属性、关联属性、受限属性和索引索性。 简单(Simple)属性:该属性解释怎样把属性赋予Bean。 关联(Bound)属性:一个Bound属性是指当该种属性的值发生变化时,要通知其它的对象。 受限(Constrained)属性:指当这个属性的值要发生变化时,与这个属性已建立了某种连接的其它Java对象可以否决属性值的改变。 索引(Indexed)属

9、性:一个Indexed属性可描述多值的属性,用一个数组表示。,带属性的JavaBean,案例名称:带属性的JavaBean 程序名称:j6_05.java,案例名称:修改JavaBean的属性方法一 程序名称:j6_06.jsp,案例名称:修改JavaBean的属性方法二 程序名称:j6_07.jsp,利用外部的Bean,JSP之所以强大,很大程度上依赖于外部组件的使用。 有很多著名的公司开发外部Bean组件,比如SUN公司和IBM公司等。本节介绍最常用的组件:Email组件、图形组件和文件上传组件,Email组件,JavaMail API 是一个用于阅读、编写和发送电子邮件的可选包(标准扩展

10、)。在JSP中要想发送Email,需要实用JavaMail组件。这里需要两个组件“activation.jar”和“mail.jar”,,发送Email,需要根据实际修改五个参数,程序才可以正确执行,目前的SMTP邮件发送服务器都需要验证。验证需要设置三个参数,发送邮件的服务器地址strHost、验证用户名strUserName和strPassWord密码 String strHost = “; String strUserName = “szg“; String strPassWord =“szg“;,案例名称: 发送Email 程序名称:mail.jsp,发送Email,还需要修改两个参数

11、就是发送人地址和收信人地址。 String strFrom = “shizhiguo“; String strToList = “shizhiguo“; 比如现在张三有一个邮箱是zhangsan,邮箱密码是mamahao,现在他要给周润发发邮件,周润发的邮箱是zhourunfa。改完的五个参数如下面的代码段。 String strHost = “; int nPort = 0; String strUserName = “zhangsan“; String strPassWord =“mamahao“; String strFrom = “zhangsan“; String strToList

12、 = zhourunfa“;,常见邮箱的SMTP地址,发送Email,绘制图形,在Java图形编程领域中,最著名的组件是JGraph组件,该组件在绘制二维和三维方面功能非常优秀。最新的JGraph组件可以从“,使用JGraph绘图,案例名称:使用JGraph绘图 程序名称:j6_09.java,文件上传,在Web开发中,文件上传是一项非常实用的功能 在Java开发体系中,文件上传功能的实现主要依赖于JavaBean,常用的上传组件是jspsmart,以jspsmart组件为例进行介绍文件上传,使用jspsmart组件实现文件上传,案例名称:文件上传功能的实现 程序名称:selectfile.h

13、tml 文件名称: 存储到服务器上的路径: ,使用jspsmart组件实现文件上传,案例名称:处理文件上传的Servlet程序 程序名称:servletUpload.java,自定义JSP标记库,在JSP规范1.1版中增加了自定义标记库,允许开发人员在自定义的标记符中封装复杂的功能。定制标记使得JSP项目中很容易创建重用的代码模块,使用自定义标记库,在使用自定义标记库时,主要分为以下3个步骤: (1)建立一个TLD(Tag Library Descriptor)文件,指定标记库中哪一个标记与哪一个处理程序相匹配。这是一种很简单的XML文件,TLD文件描述和说明了属性、信息和标记处理器文件位置等

14、信息。JSP 容器使用这一文件来映射被调用标记库的位置和用法。 (2)建立一个对标记的处理程序。处理程序本身也是一个Java类。这是标记库的真正核心。JSP页面把页面上设置的标记属性都传递给标记处理器,JSP页面上的标记标示的内容也是这样处理的。当标记处理器完成其处理过程,它就会把处理后的输出结果回送给JSP页面做进一步处理。 (3)在JSP页面中使用标记。在JSP页面中首先声明标记库,然后再使用它。,创建并使用标记库,案例名称:TLD配置文件 程序名称:mytld.tld,案例名称:处理自定义标记的Java类 程序名称:MyTagLib.java,案例名称:使用自定义标记库的JSP页面 程序

15、名称:exampletag.jsp,面向对象设计模式,面向对象软件开发领域中,设计模式包括一些规则来完成一定任务。设计模式针对一些特定的问题,提出一种解决方案。 常用的面向对象设计模式有4种: Factory模式、Singleton模式、Faade模式和MVC架构模式。,Factory模式,如果想要通过Email发送一些新产品的信息,目标用户的类型不同,所以需要发送不同内容的邮件。除此之外,用户的类型还可能会不断的增加。一般这种需求利用Factory模式设计。定义一个EmailSender类。,class EmailSender void sendEMail(SeniorClientType

16、client) SeniorClientEmail email = new SeniorClientEmail(); email.createEmailBody(); email.createEmailSubject(); email.send(); void sendEMail(RichClientType client) RichClientEmail email = new RichClientEmail(); email.createEmailBody(); email.createEmailSubject(); email.send(); void sendEMail(FemaleClientType client) FemalClientEmail email = new FemaleClientEmail(); email.createEmailBody(); email.createEmailSubject(); email.send(); ,Factory模式,根据sendEMail传递的参数类型,创建不

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

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