《JSP程序设计实用教程课件》第二版全套电子课件完整版ppt整本书电子教案最全教学教程整套课件.ppt
-
资源ID:78674048
资源大小:381.54KB
全文页数:62页
- 资源格式: PPT
下载积分:12金币
快捷下载

会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
《JSP程序设计实用教程课件》第二版全套电子课件完整版ppt整本书电子教案最全教学教程整套课件.ppt
21世纪高等学校精品教程JSP程序设计实用教程 第一章 JSP和WEB应用程序 为什么JSP发展如此迅猛,原因之一是它基于Java技术,适用于企业级计算。另一原因在于JSP支持强大的Web应用程序开发模式,使得各种程序员能够协调地工作。n1.1 JSP概述 JSP(Java Server Pages)是由Sun公司于在Java语言基础上开发出来的一种动态网页制作技术,在 Sun 正式发布JSP之后,这种新的Web应用开发技术很快引起了人们的关注。第一章 JSP和WEB应用程序nASP 和 JSP 的区别主要有以下两点:一是ASP的编程语言是VBScript之类的脚本语言,JSP 使用的是 Java、JavaScript等;二是 ASP 与 JSP这两种技术的语言引擎用完全不同的方式处理页面中嵌入的程序代码。nJSP的优点:首先,它可以将内容的生成和显示进行分离。其次,强调可重用的组件。第三,采用标识简化页面开发。第一章 JSP和WEB应用程序n1.2 JSP开发环境的配置n(1)JDK Java的软件开发工具,是Java应用程序的基础。JSP是基于Java技术的,所以配置JSP环境之前必须要安装JDK。本书使用的版本是j2sdk1.4.1,可以到Sun公司的网站免费下载。n(2)Tomcat服务器 Tomcat服务器是Apache组织开发的一种JSP引擎,本身具有Web服务器的功能,可以作为独立的Web服务器来使用。同时该软件也是免费的,对于初学者来说,Tomcat是一个很不错的选择。本书使用的版本是tomcat 5.0.28。第一章 JSP和WEB应用程序n1.3 JSP常用开发工具nJSP开发的两种常用工具,Editplus文本编辑器和IDE工具Eclipse。nEditplus是一款功能非常强大的文本编辑工具,它支持自定义工具组、自定义文件类型等功能,对于从事程序设计和网页制作的工作者实在是不可或缺!n在所有的IDE中,Eclipse可以说是最有发展前途的产品之一。Eclipse最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。Eclipse是一个开放的开发平台,通过插件系统,可以拥有几乎无限的扩展能力,因此越来越多的程序员使用它来开发程序,它也是笔者喜欢的开发工具。第一章 JSP和WEB应用程序n1.4 WEB应用程序 介绍了Web应用程序的工作原理.包括静态页面和动态页面的处理过程.此外还介绍了Web服务器和应用程序服务器的区别和联系.nWeb服务器专门处理HTTP请求,而应用程序服务器是通过很多协议来为应用程序提供事务逻辑处理。第一章 JSP和WEB应用程序n静态页面接到请求时,内容不发生更改。页面的每一行代码都是在将页面放置到服务器之前由设计人员编写好的。第一章 JSP和WEB应用程序n动态页面的内容基于用户的操作,随请求的不同而变化。第一章 JSP和WEB应用程序n1.5 软件编程体系 详细介绍了C/S和B/S的概念,以及各自的优势和劣势。nC/S(Client/Server)结构,简单地说就是传统意义上拥有客户端和服务器端的网络软件或系统,可以用譬如VB或VC等语言开发,比如最常用的QQ就是C/S结构。nB/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,主要事务逻辑在服务器端实现,形成三层结构。这样就大大简化了客户端电脑负荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。第二章 JSP页面制作基础 nJSP页面将Java代码嵌入到HTML脚本中,掌握HTML语言是学习JSP的基础。HTML是网页制作的一种规范,一种标准,它通过标记符来标记网页的各个部分。n本章首先介绍用HTML制作网页的各种标记符的设置方法,接着介绍了CSS的基本概念和使用方法。此外,为了增强读者对网页制作的了解,介绍了Dreamweaver的使用方法。通过学习,读者可以使用Dreamweaver以及相关知识制作出简单精美的网页。第二章 JSP页面制作基础n2.1 HTML语言nHTML是Hyper Text Markup Language的缩写,中文意思是超文本标记语言。n在HTML文件中,重要的文字部分都由“标记符”括起来,而标记符本身则以“”号标识,标记符内的内容称为元素,代表了标记符的意义。n 本节详细讲解了HTML的语法要点,并且通过大量实例加以说明。第二章 JSP页面制作基础n2.2 CSS编程技术nCSS(Cascading Stylesheets,层叠样式表)是一种制作网页的新技术,现已成为网页设计必不可少的工具之一。使用CSS能够简化网页的格式代码,加快下载显示的速度,也减少了需要上传的代码数量,大大减少了重复劳动的工作量。n层叠样式表CSS是一种样式描述规则,利用CSS可以定义HTML中元素的显示效果,包括元素的位置、颜色、背景、边空、字体、排版格式等。定义的格式为:选择符 样式属性:取值;样式属性:取值;.第二章 JSP页面制作基础n2.3 DreamweavernDreamweaver是Macromedia公司继Flash之后推出的又一梦幻工具。Dreamweaver、Flash以及Fireworks,被Macromedia公司称为“梦之队”,同时被广大使用者称为网页制作三剑客。Dreamweaver是所见即所得网页编辑器。nDreamweaver的主要特点:n1)最佳的制作效率。2)网站管理。3)无可比拟的控制能力。4)所见即所得。5)模板和XML。6)全方位的呈现。n此外还详细介绍了Dreamweaver的操作界面和如何用Dreamweaver 建立JSP站点。第三章 JavaScript和Java语言nJavaScript是一种基于对象的脚本语言,主要负责客户端的界面控制等工作,使开发过程简化,而且减轻服务器负荷。还能使其能在客户端(浏览器)与用户实现大量的交互,还能创建出惊人的特效。n因为JSP是基于Java语言的,JSP是Java的网络应用,所以理所当然要熟悉Java语言。第三章 JavaScript和Java语言 n3.1 JavaScript nJavaScript是一种简洁的、面向对象的、跨平台的描述语言,它可以被嵌入到HTML文件中,直接被浏览器执行,从而产生多种多样的动态网页效果。n本节详细介绍了JavaScript的语言结构、事件驱动以及对象体系。最后用日历等实例加以说明。第三章 JavaScript和Java语言n3.2 Java编程语言nJava语言是由Sun公司推出的新一代编程语言,Java语言受到了业界的广泛关注。Java语言是完全的面向对象的编程语言,充分吸取了C+语言的优点,在Java运行环境中,始终存在着一个系统级的线程,定期对内存进行自动回收,避免了内存的泄露,也减轻了程序员的工作量。nJava语言的一个目标是跨平台,在执行过程中根据所在的不同的硬件平台把程序解释为当前的机器码,实现跨平台运行。此外,Java语言还有高安全性和多线程等特点。nJava语言程序文件以.java为后缀。Java程序编写完后,用开发环境下的编译器编译生成字节码,字节码文件以.class为后缀。n本节详细阐述了Java语言的语法,其中包括多线程的概念。第四章 JSP语法 n4.1 JSP语法概述JSP页面主要由JSP元素和HTML代码构成,其中JSP代码完成相应的动态功能。n1.JSP工作原理当客户端请求浏览JSP页面时,JSP服务器在把页面传递给客户端之前,先将JSP页面编译成Servlet(纯Java代码),然后将Java编译器生成的服务器小程序编译为Java字节码,最后再转换成纯HTML代码,这样客户端接收到的只是HTML代码。n2.JSP页面结构JSP基础语法包括注释、指令、脚本以及动作元素,此外,JSP还提供了一些由容器实现和管理的内置对象。第四章 JSP语法n4.2注释JSP注释分为HTML注释和隐藏注释两种。JSP隐藏注释语句不会被执行,也不会被送到客户端的浏览器中。n1.JSP隐藏注释n 2.HTML注释!-comment -第四章 JSP语法n4.3 JSP指令n在JSP页面中,可以使用JSP指令来指定页面的有关输出方式、引用包、加载文件、缓冲区、出错处理等相关设置,主要作用是用来与JSP引擎之间进行沟通。n主要的三种指令是page、include和taglib。npage 指令命令定义整个JSP页面的属性,定义的属性会对该JSP文件和包含进来的JSP页面起作用。nInclude指令的功能是在JSP编译时插入包含的文件。ntaglib指令的功能是使用标签库定义新的自定义标签,在JSP页面中启用定制行为。第四章 JSP语法n4.4 JSP脚本元素nJSP脚本元素用来插入Java代码,这些Java代码将出现在由当前JSP页面生成的Servlet中。n脚本元素有三种格式:n声明格式%!declaration;%,其作用是把声明加入到Servlet类(在任何方法之外);n表达式格式%=expression%,作用是计算表达式并输出其结果;nScriptlet格式%code%,作用是把代码插入到Servlet的service方法。第四章 JSP语法n4.5 JSP动作nJSP动作利用XML语法格式的标记来控制Servlet引擎的行为。动作组件用于执行一些标准的常用的JSP页面。JSP动作元素包括:njsp:include:当页面被请求时引入一个文件。njsp:forward:请求转到一个新的页面。njsp:plugin:根据浏览器类型为Java插件生成object或embed标记。njsp:useBean:寻找或者实例化一个JavaBean。njsp:setProperty:设置JavaBean的属性。njsp:getProperty:输出某个JavaBean的属性。第五章 JSP内置对象 n内置对象是不需要声明,直接可以在JSP中使用的对象。在JSP代码片段中,可以利用内置对象与JSP页面的执行环境产生互动。n本章分别详细介绍了JSP的九种内置对象,其中几个重要的对象应用大量的实例加以说明。第五章 JSP内置对象nrequest对象 nrequest 对象代表请求对象,该对象封装了用户提交的信息,通过调用该对象相应的方法可以获取封装的信息和用户提交信息。n它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie,header,和session数据的有用的方法。来自客户端的请求经Servlet容器处理后,有request对象进行封装。它作为jspService()方法的一个参数由容器传递给JSP页面。第五章 JSP内置对象nresponse对象nresponse对象对客户的请求做出动态的响应,向客户端发送数据。nresponse对象封装了JSP产生的响应,然后被发送到客户端以响应客户的请求。和request一样,也由容器产生,作为jspService()方法的参数被传入JSP。nresponse对象包含了响应客户请求的有关信息。第五章 JSP内置对象nout对象主要用于向客户端输出数据。nsession对象主要用于来分别保存每个用户信息,与请求关联的会话,Session可以存储用户的状态信息。napplicaton对象主要用于保存用户信息,代码片段的运行环境。有助于查找有关servlet引擎和servlet环境的信息。npageContext对象用于管理网页属性,为JSP页面包装页面的上下文,管理对属于JSP中特殊可见部分中已命名对象的访问。nconfig对象用于存取servlet实例的初始化参数,是servlet的构架部件。npage对象代表JSP网页本身,表示从该页面产生的一个servlet实例。只有在JSP页面范围之内才是合法的。nexception对象的作用是处理JSP文件执行时发生的错误和异常。第五章 JSP内置对象nJSP页面的四种范围,分别为page、request、session、application。npage的范围在默认情况下,只在当前页面范围内有效。nrequest 的范围是指在一个JSP 网页发出请求到另一个JSP 网页之间,随后这个属性就失效。nsession 的作用范围为一段用户持续和服务器所连接的时间,但与服务器断线,这个属性就无效。session 针对请求,对每个用户创建响应的session,是用户身份的标识。可以在同一次请求的多个页面中传递参数。napplication 的作用范围在服务器一开始执行服务,到服务器关闭为止。application 的范围最大,停留的时间也最久,服务器启动,该对象自动创建,对象一直保持到服务器关闭。对一个容器而言,每个用户共享一个application对象。第六章 JSP与数据库开发 n本章首先介绍关系数据库的概念,然后分别介绍四种数据库的基本操作和界面。n因为JSP与数据的连接是通过JDBC,所以接着介绍了JDBC的原理和驱动以及常用的类。n本章的最后是数据库编程实例,该实例是使用JSP和数据库开发的最典型的例子,希望读者能熟练掌握。第六章 JSP与数据库开发n6.1 数据库基础n数据库是以一定的方式组织并存储在计算机存储设备上、能够为不同用户所共享的、与应用程序彼此独立的相互关联的数据的集合。n基本的数据模型有三种:层次模型系统、网络模型系统和关系模型系统。n关系模型系统具有数据结构简单灵活、易学易懂且数学基础雄厚等特点,发展到现在已成为数据库的标准。n常见的中小型数据库系统有Access和MySQL,大型数据库系统有SQL Server和Oracle。第六章 JSP与数据库开发n6.2 JDBC基础nJDBC全称为Java DataBase Connectivity standard,它是一种可用于执行SQL语句的Java API。它由一些Java语言编写的类和界面组成,JDBC提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。n1 JDBC的任务 简单地说,JDBC能完成下列三件事:(1)同数据库建立连接(2)向数据库发送SQL语句(3)处理数据库返回的结果 n2JDBC两层模型和三层模型 nJDBC支持两层模型,也支持三层模型访问数据库。n两层模型中,Java Appple直接同数据库连接。这就需要与被访问的数据库进行连接的JDBC驱动器。n三层模型中,命令将被发送到服务的“中间层”,而“中间层”将SQL语句发送到数据库。数据库处理SQL语句并将结果返回“中间层”,然后“中间层”将它们 返回用户。第六章 JSP与数据库开发n6.3 JSP中使用数据库nJDBC API是通用接口,在与数据库连接时先要加载。加载驱动程序有很多方法,最常用的就是先把驱动程序类溶解到内存中,作为“当前”驱动程序。内存中可以有多个驱动程序,但只有现在加载的这个作为首选连接的驱动程序。n通常一个数据库的连接过程为:(1)加载驱动程序。(2)通过DriverManager到得一个与数据库连接的句柄。(3)通过连接句柄绑定要执行的语句。(4)接收执行结果。(5)可选的对结果的处理。(6)关闭数据库连接。第六章 JSP与数据库开发n数据库基本操作 nSQL有四种基本的数据操作语句:Insert,Select,Update和Delete。由于经常用到,有必要在此进行详细说明。n1插入数据Insert语句可以将一行记录插入到指定的一个数据表中。n2创建记录和表Select语句可以从一个或多个表中选取特定的行和列。n3删除记录Delete语句用来删除已知表中的一个或多个记录。n4更新记录Uptate语句允许用户在已知的表中修改已经存在的一条或多条记录。第七章 JSP与JavaBean n目前,JSP作为一个流行的动态网站开发语言,得到了越来越广泛的应用。n在各类JSP应用程序中,JSP+JavaBean的组合成为了一种事实上最常见的JSP程序的标准。n本章首先简要介绍JavaBean的概念,然后重点讲述JavaBean的应用,并通过实例来加以说明。第七章 JSP与JavaBeann7.1 JavaBean概述nJavaBean 是一种Java语言写成的可重用组件。JavaBean中的类必须是具体的和公共的,并且是具有无参数的构造器。JavaBeans 通过提供符合一致性设计模式的公共方法,将内部域封装为属性。nJavaBean与EJB的主要区别:(1)JavaBean与EJB规范在以下方面有共同的目标:通过标准的设计模式推广Java程序代码,提升开发过程和开发工具之间的重复运用性、可携性但是这两种规格的原始问题却是为了解决不同的问题。(2)EJB规范所定义的组件模型是用来开发服务端的Java程序,因为EJB可能执行在不同的服务器平台上,包括无图形的大型主机上,所以EJB无法使用类似AWT或SWING之类的图形化程序库。第七章 JSP与JavaBeannJavaBean的任务 nJavaBean的任务就是:“Write once,run anywhere,reuse everywhere”,即“一次性编写,任何地方执行,任何地方重用”。nJavaBean应该提供一个实际的方法来增强现有代码的利用率,而不再需要在原有代码上重新进行编程。除了在节约开发资源方面的意义外,一次性地编写JavaBean组件也可以在版本控制方面起到非常好的作用。通过JavaBean可以很好地实现逻辑的封装、程序的易于维护等等。n以下是实现JavaBean的一些具体的主要设计目标:(1)紧凑而方便的创建和使用(2)完全的可移植性(3)继承Java的强大功能(4)应用程序构造器支持(5)分布式计算支持第七章 JSP与JavaBeann7.2 JavaBean应用 n1.如何创建JavaBean从基本上说,JavaBean可以看成是一个黑盒子,即只需要知道其功能而不必理会其内部结构的软件设备。其创建方式其实与创建一个公共类一样。n2.如何调用JavaBean为了在JSP页面中使用JavaBean,必须使用JSP动作标签useBean。n3.JavaBean的存放目录如果只让当前JSP页面调用JavaBean,则在该目录下新建文件夹,命名为WEB-INF,同时在创建好的文件夹下再建立一个文件夹,命名为classes。把Beans的字节码文件存放在该文件夹下,这样在JSP页面就可以用useBean调用了。第七章 JSP与JavaBeann7.3 JavaBean应用实例n1.使用JavaBean连接数据库带领读者体验JavaBean给系统维护带来的便捷。n2.进程条的实现让读者学习编写JSP+JavaBean 模式的程序。第八章 JSP与文件操作 n无论是用JSP技术,还是ASP、PHP技术实现的网站,都可能有文件上传下载、计数器以及投票等功能,这些功能的实现离不开对文件的操作。n本章首先介绍File对象和一些常用的输入输出流,然后介绍了实现多文件上传的两种方式。最后详细介绍可以实现上传下载功能的SmartUpload组件,并通过实例加以说明。第八章 JSP与文件操作n8.1 File对象nFile的使用非常的简单,介绍了它的四个构造函数和常用方法。n分别用实例说明如何使用File对象来获取文件的属性、创建文件和文件夹、删除文件和文件夹。第八章 JSP与文件操作n8.2 输入输出流 n在Java中,按照数据交换的单位文件流可分为字节流、字符流两种。我们把能够读取一个字节序列的对象称作一个输入流。把能够写一个字节序列称作一个输出流。它们分别由抽象类InputStream和OutputStream类表示。n因为面向字节的流不方便用来处理存储为Unicode(每个字符使用两个字节)信息。所以Java引入了用来处理Unicode字符的类层次,这些类派生自抽象类Reader和Writer,用于读写双字节的Unicode字符。第八章 JSP与文件操作n字节流n1InputStream类InputStream类是所有输入数据流的父类,它是一个抽象类,定义了所有输入数据流都具有的共通特性。n2OutputStream类此类是所有输出字节流类的父类。输出流接受输出字节并将这些字节发送到某个接收器。一个具体的输出流类需要重载此方法,以提供具体功能。n3FileInputStream文件输入输出流是一个从文件读取数据的输入输出流。FileInputStream类是从InputStream中派生出来的简单输入类,作用是从输入流中读取字节。n4FileOutputStream类FileOutputStream类是OutputStream中派生出来的简单输出类,它提供了基本的文件写入能力。第八章 JSP与文件操作n字符流n1Reader类Reader是定义Java的流式字符输入模式的抽象类。该类的所有方法在出错情况下都将引发IOException 异常。n2Writer类Writer 是定义流式字符输出的抽象类。所有该类的方法都返回一个void 值并在出错条件下引发IOException 异常。n3FileReader类从FileReader类可以在指定文件上实例化一个文件输入流,利用字符流提供的方法可以从文件中读取一个字符或者一组数据。n4FileWriter类由FileWriter 类可以实例化一个文件输出流,并提供向文件中写入一个字符或者一组数据的方法。如果用FileWriter来打开一个只读文件会产生IOException异常。第八章 JSP与文件操作n8.3 文件上传下载nJavaBean实现多个文件上传的两种方法,分别是使用Http协议和Ftp协议实现。n1采用HTTP协议实现多个文件的上传 使用表单元素(input typefile),表单提交给JSP页面处理。n2采用Ftp协议实现多个文件的上传首先与Ftp服务器建立连接。然后初始化文件的传输方式,将文件输出到文件输入流FileInputStream中,FileInputStream中的数据读入字节数组中,字节数组中的数据写入输出流。这样和源文件同名的一个文件就复制到了服务器端。第八章 JSP与文件操作nJSP上传组件 njspSmartUpload是由网站开发的一个可免费使用的全功能的文件上传下载组件,适于嵌入执行上传下载操作的JSP文件中。n该组件有以下几个特点:(1)使用简单。在JSP文件中仅仅书写三五行Java代码就可以完成文件的上传或下载。(2)能全程控制上传。利用jspSmartUpload组件提供的对象及其操作方法,可以获得上传文件的全部信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。(3)能对上传的文件在大小、类型等方面做出限制。(4)下载灵活。(5)针对MYSQL数据库,能将文件上传到数据库中,也能将数据库中的数据下载下来。第八章 JSP与文件操作n上传下载实例 采用SmartUpload上传组件,简单的实现上传和下载功能,让读者体会如何实现文件的上传和下载。n网页计数器的实现 采用文件操作来实现网页记数器。第九章 网上教学系统 n该系统是基于JSP技术的网上教学系统,采用BS模式,利用JavaBean技术,使用Tomcat服务器和Access数据库,完成了系统的开发。n本章从系统的总体设计起步,详细讲述了网上教学系统的的数据库设计以及具体开发的实现过程。n要求读者能熟练掌握数据库的一些基本操作和数据库的封装,同时还要求读者能理解并掌握JSP+JavaBean的开发结构,并学会把Java代码封装成类和方法。第九章 网上教学系统n9.1 系统总体设计n1.系统功能模块本教学系统主要用来进行网上选课和网上评分。作为一个系统,应该由一些相对独立的模块耦合而成。本系统主要包括如下几个大的模块:登录模块、管理员模块、学生信息管理模块、教师管理模块。n2.系统总体框架 第九章 网上教学系统n9.2 系统数据库设计n对于数据库应用系统来说,设计数据库是非常重要的,也是首要的工作,一般先设计系统的数据库,然后再开始设计应用程序。n1.数据库需求分析用户信息、课程信息、班级信息、注册信息 n2.数据表设计用户表(admin、student、teacher)、课程表(course)、班级表(classes)、注册表(enrol)n3.创建数据表 第九章 网上教学系统n9.3 各功能模块的具体实现n1.系统公用模块 n2.登录模块n3.管理员模块增删改学生信息、增删改教师信息、增删改课程信息、增删改班级信息 n4.学生模块网上选课、查看成绩、修改个人信息 n5.教师模块确认选课学生、给学生打分 第十章 销售业绩统计系统 n10.1 系统总体设计n1.系统功能模块销售系统基本信息、按地区统计、按销售人员统计、按销售部门汇总统计、按月汇总销售业绩生成报表、按季度汇总销售业绩生成报表、按年汇总销售业绩生成报表n2.系统总体框架 第十章 销售业绩统计系统n3.系统的编程思想实现本系统采用JSP技术与Javabean 技术相结合来实现。用户界面(Result JSP)和事务逻辑(Javabean)的开发分别选用JSP、Javabean技术,同时使用Javabean 技术封装交换数据,并将其存储在不同会话中,以满足个性化Web 应用。第十章 销售业绩统计系统n10.2 系统数据库设计n1.数据库需求分析销售人员信息、销售部门信息、产品信息、销售信息 n2.数据表设计销售人员信息表(personal)、销售部门表(sector)、产品信息表(product)、销售信息表(sale)。第十章 销售业绩统计系统n10.3 各功能模块的具体实现n1.系统公用模块首页结构、中文转码页面、封装数据库、配置直接访问首页的XML文件n2.销售系统基本信息销售人员信息查看和添加、其他信息查询与添加n3.销售业绩统计查询n4.部署和发布系统 第十一章 JSP展望 n本章主要从JSP的技术难点出发,向读者介绍了Servlet技术和MVC模式,n同时还简要介绍了Java对象持久化技术中现在比较流行的Struts和Hibernate架构。第十一章 JSP展望n11.1 JSP技术难点n关于JSP的技术难点,主要有三点:n1.连接数据库由于Java对数据库支持的限制,读者需要使用JDBC来连接数据库。n2.内置对象会话状态维持是Web应用开发者必须面对的问题。n3.转换Unicode编码由于IE默认字符集为GB2312,然而Windows默认为GBK,Java则默认为Unicode,所以如果不通过一定的转换,直接在GB2312字符集上显示从GBK或Unicode得到的页面将是一片乱码。第十一章 JSP展望n11.2 Servlet技术nServlet是一种独立于平台和协议的服务器端的Java应用程序,可以生成动态的Web页面。Servlet具有Java程序的全部功能,能够访问并读写文件、改变系统特性等。nJava Servlet有着十分广泛的应用。不仅能简单的处理客户端的请求,借助Java的强大的功能,使用Servlet还可以实现大量的服务器端的管理维护功能,以及各种特殊的任务,比如,并发处理多个请求,转送请求,代理等。nServlet遵循严格的生命周期。Servlet的生命周期定义了一个Servlet如何被加载、初始化,以及它怎样接收请求、响应请求、提供服务。第十一章 JSP展望n11.3 MVC模型n1.常用三层结构模式第十一章 JSP展望n2.MVC模型 nMVC模式包括三个部分:模型(Model)、视图(View)和控制器(Controller),分别对应于内部数据、数据表示和输入输出控制部分。第十一章 JSP展望nMVC 模式的优缺点n1MVC 模式的优点(1)将数据建模、数据显示和用户交互三者分开,使得程序设计的过程更清晰,提高了可复用程度。(2)当接口设计完成以后,可以开展并行开发,从而提高了开发效率。(3)可以很方便地用多个视图来显示多套数据,从而使系统能方便地支持其他新的客户端类型。n2MVC 模式的缺点(1)由于实施MVC 模式过程而产生的开销。(2)由于设计MVC 模式时分析不够、设计不当而引起相反的效果,把属于一个模块的分开,把不相干的模块聚在一起。第十一章 JSP展望n11.4 Java对象持久化技术n当今越来越多的Web应用是基于MVC设计模式的,此种设计模式提高了应用系统的可维护性、可扩展性和组件的可复用性。nApache开源组织提供的Struts框架充分体现了MVC架构。Hibernate实际上是一个用对象编程思维来操纵数据库的解决方案,提出了一种基于Struts和Hibernate架构的Web应用开发策略。nMVC架构中的模型部分(数据持久层)用Hibernate实现,视图和控制器的实现依托于Struts框架。这种策略真正实现了层间的松散耦合。第十一章 JSP展望nStruts框架简介nStruts是Apache组织的一个开放源代码项目,提供了一个构建基于MVC体系结构的Web应用程序的框架。nStruts的体系结构与工作原理如图所示。第十一章 JSP展望n Hibernate简介nHibemate是Apache软件基金的一个开放源代码的ORMapping(对象关系映射)框架,它对JDBC进行了轻量级的对象封装,使Java程序员可以随心所欲地使用对象编程思想来操纵数据库。nHibernate相当于是对持久层数据处理的一种新的解决方案。Hibernate完全着眼于关系数据库的OR映射,并且包括比大多数商业产品更多的功能。nHibernate帮助基于普通的Java对象模型的持久对象的创建,从而允许持久对象拥有复杂的结构如混合类型、集合和属性,还可以拥有用户自定义的类型。谢谢!