




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
银行牌号系统的设计与实现摘要本论文论述的是一个简化的Web应用程序模型,是一个B/S结构的JSP+sql的应用。主要介绍了采用的JSP技术和sql技术结合的特点,系统功能非常的完善,而且选择开放的应用平台,建设了一套与平台无关,以统一的服务接口规范和与数据库相连的网站应用。以及怎样使Web程序设计模块化和面向对象化,即将表现和逻辑剥离。还介绍了采用的编程模型和特点。JSP技术以其独特的优势成为开发网站系统的首选工具,论文中以一种简化的方式介绍了JSP开发网站系统的方法和特点,即使用Eclipse开发工具,使用本机做服务器模拟实现客户端登录,最终能够实现客户端的所有操作。由于JSP具有一次编写,各处的运行、丰富而且高质量的工具支持、通过构件和标签实现重用、通过指令和标签库增强与面开发能力等优点,开发的系统可以在任何平台上编写、运行在任意平台上的JAVA服务器构件。该系统实现了一个银行牌号管理系统,其包含了一个银行牌号管理系统的WEB前台和后台所需的所有核心功能,如:有两个登陆权限,分别是管理员权限与工作人员权限,管理员的操作分为系统用户管理、工作人员管理、所有业务记录和系统管理,工作人员的操作分为个人资料管理,窗口设置和业务办理。关键词JSP;sql;银行iTheDesignandImplementationoftheBankingBrandSystemAbstractThisthesisisasimplifiedmodelofWebapplicationisaB/SstructureoftheapplicationofJSP+SQL.MainlyintroducedtheuseofJSPtechnologyandSQLtechnologycombinedwiththecharacteristicsofsystemfunctionisperfect,andchoosetheopenapplicationplatform,tobuildasetofhasnothingtodowiththeplatform,areconnectedtothedatabaseinaunifiedserviceinterfacespecificationandsiteapplication.AndhowtomakeWebmodularizationandobjectorientedprogramdesign,theperformanceandlogic.Alsointroducedtheprogrammingmodelandcharacteristics.JSPtechnologywithitsuniquepositiontobecomethedevelopmenttoolsofchoiceforwebsitesystem,thethesisinasimplifiedwayisintroducedJSPdevelopmentmethodsandcharacteristicsofwebsitesystem,whichUSEStheEclipsedevelopmenttools,usethemachinetodosimulationrealizationofclientserverlogin,eventuallybeabletoachievetheclientsalloperations.BecausetheJSPhaswriteonce,runeverywhere,richandhighqualitytoolssupport,throughthecomponentreuseandtag,withsurfacethroughinstructionandtaglibrarytoenhancedevelopmentability,thedevelopmentofthesystemcanbewrittenonanyplatform,JAVAservercomponenttorunonanyplatform.Thesystemimplementsabankbrandmanagementsystem,itcontainsaWEBbankbrandmanagementsystematthefrontdeskandthebackgroundofalltherequiredcorefunctions,suchas:therearetwolandrights,arerespectivelytheadministratorauthorityandstaffauthority,theoperationoftheadministratorisdividedintothesystemusermanagement,staffmanagement,allbusinessrecordsandsystemmanagement,staffoperationsintopersonalinformationmanagement,thewindowSettingsandbusinesstodealwith.KeywordsJSP;SQL;bank目录摘要.iAbstract.ii1绪论.11.1问题提出.11.2文本研究(软件开发)的整体框架.11.3研究(软件开发)的内容和意义.22软件开发平台分析.32.1课题的可行性分析.32.2可行性分析.32.2.1JAVA的特点.32.2.2技术可行性分析.42.2.3可靠性和安全性特点.52.3JSP技术介绍.62.3.1JSP简介.62.3.2JSP技术特点.62.3.3JSP开发WEB的几种方式.82.4JAVABEAN技术介绍.112.4.1JAVABEAN简介.112.4.2JAVABEAN的特点.112.5JDBC技术.112.5.1JDBC简介.112.5.2JDBC类定义.123软件需求分析.143.1功能需求.143.1.1功能划分.143.1.2功能描述.143.2外部接口需求.143.2.1用户界面.143.2.2软件相应接口.144软件概要设计.154.1总体设计.154.1.1处理流程.154.1.2总体结构与模块外部设计.154.2数据库设计.154.3功能结构设计.164.4功能需求设计.165软件详细设计.175.1程序设计详细说明.175.1.1总体设计.175.1.2登录功能模块描述.175.1.3主页模块描述.205.1.4工作人员模块描述.215.1.5管理员后台模块描述.22结论.27参考文献.28致谢.29外文原文.30中文翻译.3701绪论1.1问题提出由于当今各行各业的信息化、智能化建设越来越普及,整个社会对各个行业的办事效率的要求越来越高,尤其是服务性行业,既要满足被服务人的服务需求,又要提高服务质量,提高服务效率,例如银行等,现在的用户不仅仅要求银行等满足业务上的需要,还要求银行尽量减少用户的等待时间,而银行本身由于竞争的需要,也要求提高本身的办事效率,提高本身服务的形象,而这些窗口服务的排队现象在所难免,为了在排队时减少办事人的办事时间,为用户创造一个良好的环境,排队系统应运而生。随着近年来科学技术,尤其是电子信息技术的迅猛发展,电子信息技术不仅渗透了大众的生活,也在社会各行各业的发展中起到了很关键的作用,其中,竞争尤其激烈的服务业也常常借助电子信息技术,互联网技术等来提高自己的服务质量,从而提高自己的公众形象。而随着业务量的不断增大,科学而有效的对业务量进行管理成为了一个实际而关键的问题。比如说在银行,排队等候已经是不可避免的环节,但是前拥后挤,杂乱无章的排队不仅浪费了客户的宝贵时间,更是对银行的服务形象产生十分不利的影响。因而提高服务质量,树立良好的形象是十分必要的。改善杂乱而劳累的排队现象,为客户创造一个人性化的服务环境成为银行急需解决的问题。设计一套银行牌号系统,可以比较好地解决因排队引起的种种问题。该网站是通过电子信息技术、网络互联技术和现代通讯技术,使得银行牌号管理涉及的各方借助互联网方式联系,实现整个银行牌号管理的电子化。由于信息技术的逐渐完善和网络银行牌号管理系统的日益发展,网站应运而生。自其产生之日起,就一直被人们所重视,并不断发展完善,将逐渐成为银行发展的重要形式,具其发展趋势表明它将成为未来社团管理系统等交流领域唯一的方式。对于网站除了要选取有优势的语言和开发工具外,还有如网络基础设施、实时动态银行牌号管理、数据交互等诸多问题。虽然当今开发网站系统的开发工具很多,但是如何开发出一种同时具有耗费系统较少资源、具有较快的运行速度、较高的安全性、低成本的系统成了问题的关键。用JSP开发的网站系统无疑具有众多优点,因此该系统就是一个高性能的网站系统雏形,经过扩展和优化即可以用做银行牌号管理用途,适合用户进行银行牌号管理。1.2文本研究(软件开发)的整体框架该网站系统应用了JAVA领域中的JSP技术、JDBC和JAVABEAN等技术。该网站系统具有一个完整网站系统的基本功能。该系统对应一个WEB应用系统的3个层次,使用了JAVA平台分别提供的不同的技术支持,这些技术同其他WEB技术结合共同实现完整的JAVAWEB技术平台。在浏览器一端,支持标准的基于HTML/HTTP协议的浏览器作为前端,通过XML还可以支持更加丰富的浏览器前端系统,如WAP设备。对于浏览器端的编程开发,则可以使用JAVASCRIPT脚本语言,对于复杂的客户端程序还可以通过JAVAAPPLET实现。在WEB服务器上,JAVA通过SERVLET、JSP、JAVABEAN、TAGLIB以及1XML技术提供了充分的动态WEB应用开发功能。在后台系统的连接(如数据库)方面,则可以通过JDBC等技术实现连接。整个技术体制建立在J2SE平台基础之上,即JAVA2标准环境。JAVA2平台包括标准版(J2SE)、企业版(J2EE)、和微缩版(J2ME)三个版本。J2SE就是JAVA2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入式系统开发,如手机和PAD的编程;J2EE是JAVA2的企业版,主要用于分布式网络程序的开发,如电子商务网站和ERP系统。也就是说,在使用JAVA技术开发WEB应用程序的过程中,可以充分使用J2SE平台提供的平台支持,J2SE包括了丰富的基本应用功能支持和类库,包括构成JAVA语言核心的类,比如数据库连接,接口定义,输入输出,网络编程与图形处理、复杂数据类型等等,这就使得当使用JSP/SERVLET等技术开发动态WEB程序时可以充分利用J2SE类库提供的功能支持,实现所需的复杂功能,祢补基本语言功能的不足。该网站系统运用了上述框架中的一部分技术,既IE浏览器、JSP、sql、等基础技术,用Eclipse开发工具,作为服务器,在WINDOWS7系统中运行,配置了本地服务器进行本机访问,能够实现基本的操作功能,如果有网络环境,能够在发布到网络上访问运行。1.3研究(软件开发)的内容和意义系统运用了JSP与sql技术相结合,使程序更加模块化。虽然该系统的功能相对来说比较简单,但是界面清晰易于操作,能够有效地提高工作人员的工作效率,具备了一个网站系统的基本流程,体现了一个网站系统的基础模型。经过一些扩展和优化能够适合一些信息用户作为银行牌号管理用途的网站。网站应用后的经济效益是可观的。其应用发展的趋势也是不可低估的。它的未来必将更加完善,并更好地为我国的各个银行牌号管理领域服务。22软件开发平台分析2.1课题的可行性分析信息技术的快速发展,为网站系统尽快实现网上银行交流提供了有力支撑。随着技术水平的提高,建设统一的银行牌号管理平台,整合各业务系统,建立各网上银行部门的银行牌号管理信息,实现信息共享、银行牌号管理交流,是深入开展信息化应用的必然要求。经过充分调研论证,我决定参考原有的银行牌号管理系统,开发网站系统银行牌号管理系统。我的课题银行牌号管理系统,是一个基于B/S结构的JSP+sql的应用。采用技术成熟的sql结构体系。按照不同的功能来划分,降低系统模块与模块之间的耦合性,提高不同模块的独立性,从而保证了系统的稳定性、安全性、可扩展性和可移植性。2.2可行性分析2.2.1JAVA的特点Java是全新的计算机技术,它是建立在基于强大的网络和同样的软件应该在不同的计算机系统上运行的思想上的。这些计算机系统包括消费型器件和其他一些设备。利用Java技术,您能令人信服的让同一种应用在各种各样机器如:PC、Macintosh系统、计算机网络或者像Internet可视电话一样的新技术上运行。Java可以既可以看作是一种真正的程序设计语言,也可以看作是一个完整的平台。作为一种程序语言,它的特点可以归纳为:简洁,可以加速开发,JAVA去掉了很多容易混淆的或复杂的概念,如指针,因此JAVA会以一种更清晰方便的方式去实现;JVM可实现跨平台性,即一次编写到处运行,这是JAVA语言最大的优势。在使用其它语言编写程序时遇到的最大的问题就是当操作系统变化,处理器升级以及核心系统资源发生变化时都可能导致程序出现错误甚至无法运行。JAVA的虚拟机成功的解决了这一问题,用JAVA语言编写的程序可以在任何装有JAVA虚拟机的计算机上正确地运行。JAVA是纯粹的面向对象的程序设计语言,更符合人的思维模式。在现实生活中,我们常常会根据共有的属性与功能给出一个概念,JAVA语言与其他面向对象的语言一样,引入了类的概念,包含了对被创建的对象的状态的描述与方法的定义。解释型,JAVA与C+不同,它不是针对特定的CPU芯片来进行编译,而是把程序编译成为称作字节码的一种“中间代码”。字节码一种是很接近机器码的文件,它可以在装有了JAVA虚拟机JVM的任何系统上被解释执行。JAVA被设计成解释执行的程序,即翻译一句,执行一句,而不产生完整的机器代码程序。在翻译的过程中如果没有出现错误,就会一直进行到完毕,否则将会在出现错误的地方停止执行。对于同一个程序,如果是被解释执行的,那么它的运行速度通常会比编译为可执行的机器代码的运行速度慢一些。但是对于JAVA来说,二者的差别并不很明显,JAVA的字节码经过了仔细的设计,很容易便能够使用JIT(即时编译方式)编译技术将字节码直接转化为高性能的本地机器码。Sun公司在JAVA2的发行版本中提供了这样一个字节码编译器JIT(JustInTime),它是JAVA虚拟机中的一部分。JAVA运行系统在提供JIT的同时仍具有平台独立性,因此,“高效且跨平台”对于JAVA来说不再是矛盾的概念。如果把JAVA语言编写的程序比做“汉语”的话,字节码就相当于是“世3界语”,世界语并不与具体的“国家”相关,只要这个具体的“国家”提供了相应的“翻译”,就可以快速地把“世界语”翻译成为本地语言。代码安全校验器保障其安全性。当我们想要从网络上下载一个程序,我们最担心的就是这个程序中是否包含有恶意的代码,比如试图读取或者删除本地计算机上重要的文件的代码,甚至该程序是否是一个病毒程序。但是当我们使用JAVA的浏览器时,我们可以放心地运行JAVA的小应用程序JAVAAPPLET,而不必担心有恶意的企图或感染病毒,因为JAVA小应用程序会被限制在JAVA的运行环境中,不允许其访问计算机中其他的部分。多线程,内置对多线程的支持也是JAVA的特点之一,即允许同时完成多个任务。多线程通常会给人以多个任务同时进行的错觉,实际上,只是处理器在不同的线程之间迅速地切换,而处理器的切换速度足够快而超过了我们接收信息的速度。C+语言没有内置的多线程机制,因此必须调用操作系统的多线程功能来进行多线程程序的设计。动态,支持在线升级,JAVA程序的基本组成单元是类,其中一些类是由我们来编写的,也有一些类是直接从类库中引入的。而类是在程序运行时动态装载的,这就使得JAVA可以在分布环境中动态地维护程序和类库,而不必与C+一样,每当其类库升级之后,相应的程序都必须重新修改和编译。还有健壮性以及适用于Internet技术等。而作为一个平台,它通过那些符合Sun用户发布的标准APIs开发的应用,在操作系统、数据库、中间件和其他第三方厂商提供的服务。2.2.2技术可行性分析根据系统目标来衡量所需的技术是否具备,从硬件、软件的性能要求、环境条件等方面去考虑和分析。银行牌号管理系统是采用B/S结构的JSP+sql的应用。B/S架构(Browser/Server,浏览器/服务器模式),是在WEB兴起之后的一种网络架构模式,而WEB浏览器就是客户端最主要的应用软件。这种架构模式统一了客户端,将系统功能实现的核心部分集中到了服务器上,从而简化了系统在开发、维护和使用过程中的操作。客户端的计算机上只需要安装一个浏览器,如NetscapeNavigator或InternetExplorer,而服务器端需要安装Oracle、Sybase、Informix或SQLServer等数据库。浏览器可以通过WebServer同服务器端的数据库进行数据交互。B/S架构的优点有:B/S架构的系统具有分布性特点,可以随时随地进行浏览、查询等业务的处理。业务的扩展简单而且方便,只要通过增加网页就可以拓展服务器的功能。维护起来简单方便,只需要改变网页,即可同步地实现所有用户的更新操作。B/S架构系统开发简单,共享性强。近年来,随着软件技术的日趋先进,软件系统的改进和升级都越来越频繁,B/S架构的软件尤其明显地体现出了其方便的特性。对于一个稍具规模的单位来说,如果系统的管理人员必须在几百甚至上千部电脑之间来回奔跑,其效率和工作量是可想而知的,但是如果是B/S架构的软件,只需要对其服务器进行管理就可以了,而所有的客户端只是浏览器,不需要做任何维护的工作。无论它的用户规模多么庞大,其下有多少的分支机构都不会对其维护升级的工作造成负担,所有的操作只需要针对服务器展开;如果服务器端与客户端是异地,则只需要把服务器连接专网,就可以实现远程的维护、升级和共享。所以客户端会越来越“瘦”,而服务器端则是越来越“胖”,这将会是今后信息化发展的主流方向。这样,软件的升级和维护会越来越容易,同时用户使用起来会越来越简单,对于用户的人力、物力、4时间、费用等方面也是显而易见的,惊人的节省。因此,维护和升级革命的方法是“瘦”客户端,“胖”服务器端。而B/S架构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过用户内部的安全认证后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。B/S与C/S处理模式相比,在硬件环境方面,C/S一般要建立在专用的网络上,小范围里的网络环境,局域网之间再通过专门的服务器来提供连接和数据交换服务。而B/S是建立在广域网之上的,不需要有专门的网络硬件环境,例如电话上网,租用设备等,信息自己管理。因此具有比C/S更强的适应能力,一般来说只需要有操作系统和浏览器就可以。在对安全的要求方面,C/S一般面向的是相对固定的用户群,对信息安全的控制能力较强。所以,一般具有高度机密的信息系统会采用C/S架构。而B/S架构的系统适合发布部分可公开的信息,对安全的控制能力相对较弱,可能面向不可知的用户。在程序架构方面,C/S架构的程序更加注重流程,可以对权限进行多层次的校验,对系统的运行速度考虑得较少。而B/S架构的程序对安全以及访问速度的多重考虑是建立在需要更加优化的基础之上的。比C/S有更高要求的B/S架构的程序会是发展的趋势。在系统维护方面,则B/S架构大大简化了客户端,只要客户端机器能上网就可以。对于B/S而言,开发、维护等几乎所有工作也都集中在服务器端,当信息用户对网络应用进行升级时,只需更新服务器端的软件就可以,这减轻了异地用户系统维护与升级的成本。如果客户端的软件系统升级比较频繁,那么B/S架构的产品优势明显所有的升级操作只需要针对服务器进行。在软件重用方面,C/S程序有着不可避免的整体性的考虑,构件的重用性没有在B/S架构的要求下构件的重用性好。B/S架构的多重结构,要求构件具有相对独立的功能。在用户接口方面,C/S架构的程序比较多的建立在Windows平台上,表现方法有限,并且对程序员的要求普遍较高。而B/S架构的程序建立在浏览器上,可以用更加丰富与生动的表现方式同用户进行交流。并且降低了开发的成本。在信息流方面,C/S架构的程序是典型的中央集权式的机械处理,因此交互性相对较低。而B/S架构的程序信息流向是可以变化的。2.2.3可靠性和安全性特点Java最初设计目的是应用于电子类消费产品因此要求较高的可靠性。Java虽然源于C+,但它消除了许多C+不可靠因素,可以防止许多编程错误。首先,Java是强类型的语言,要求显式的方法声明,这保证了编译器可以发现方法调用错误,保证程序更加可靠;其次,Java不支持指针,这杜绝了内存的非法访问;第三,Java的自动单元收集防止了内存丢失动态内存分配导致的问题;第四,Java解释器运行时实施检查,可以发现数组和字符串访问的越界,最后,Java提供了异常处理机制,程序员可以把一组错误代码放在一个地方,这样可以简化错误处理任务便于恢复2。由于Java主要用于网络应用程序开发,因此对安全性有较高的要求。如果没有安全保证,用户从网络下载程序执行就非常危险。Java通过自己的安全机制防止了病毒程序的产生和下载程序对本地系统的威胁破坏。当Java字节码进入解释器时,首先必须经过字节码校验器的检查,然后,Java解释器将决定程序中类的内存布局,随后,类装载器负责把来自网络的类装载到单独的内存区域,避免应用程序之间相互干扰破坏。最后,客户端用户还可以限制从网络上装载的类只能访问某些文件系统。上述几种机制结合起来,使得Java成为安全的编程语言。52.3JSP技术介绍2.3.1JSP简介JSP(JAVASERVERPAGES)是由SunMicrosystems公司倡导并与许多公司共同参与创建的一种使软件的开发人员能够响应客户端的请求,从而动态地生成HTML、XML或者其他格式文档的Web网页的技术标准。JSP技术以Java语言作为脚本语言,JSP网页为整个服务器端的Java库单元提供了一个接口,用来服务于HTTP的应用程序。JSP技术使得Java代码与特定的预定义动作能够嵌入到静态页面中。JSP技术的语法中增加了被称作JSP动作的XML标签,它们是用来调用内建功能的。JSP技术使用Java编程语言来编写类XML的tags和scriptlets,封装产生动态网页的处理逻辑。网页还可以通过tags和scriptlets来访问存在于服务器端的资源的应用逻辑。JSP技术将网页逻辑和网页设计与显示相分离,它支持可重用的,基于组件的设计,让基于Web的应用程序的开发变得迅速且容易。当Web服务器遇到访问JSP网页的请求时,首先会执行其中的程序段,然后将执行的结果连同JSP文件中的HTML代码一同返回给客户端。所插入的Java程序段能够进行操作数据库、重新定向网页等操作,从而实现建立动态网页所需要的功能。JSP和JavaServlet一样,在服务器端执行,通常返回给客户端的就只有一个HTML格式的文本,因此,客户端只需要有浏览器就可以浏览。2.3.2JSP技术特点按照脚本语言是服务于某一个子系统的语言这种论述,JSP应当被看作是一种脚本语言,然而,作为一种脚本语言,JSP又显得过于强大了,在JSP中几乎可以使用全部的Java类。作为一种基于文本的、以显示为中心的开发技术,JSP提供了JavaServlet的所有好处,如,高效:如果是传统的CGI,其中的每个请求都需要启动一个新的进程,如果CGI程序本身所执行的时间比较短的话,用于启动进程的开销反而很可能超过实际的执行时间。而对于Servlet,每一个请求都由一个轻量级的Java线程来处理,而不是用重量级的操作系统进程。在传统的CGI中,如果有n个对同一CGI程序发出的并发的请求,那么该CGI程序的代码要在内存中重复地装载n次。但是对于Servlet,用于处理请求的是n个线程,只需要一份Servlet类代码。并且在性能优化方面,Servlet也比CGI有着更多的选择,比如缓冲之前计算的结果,保持数据库连接的活动等等。第二个好处是方便,Servlet提供了大量的实用工具例程,比如自动地对HTML表单数据进行解析和解码、读取与设置HTTP头、对Cookie进行处理与跟踪会话状态等。第三个好处就是功能强大,通过使用Servlet,可以很轻松地完成许多使用传统的CGI程序很难完成的任务,比如说Servlet能够直接同Web服务器进行交互,但普通的CGI程序却不可以。Servlet还能够实现各个程序之间的数据共享,使得数据库连接池之类的功能可以很容易地实现。第四个好处是可移植性好,Servlet是用Java语言编写的,Servlet的API具有完善的标准。还有一个好处是节省投资,首先,有许多廉价甚至免费的Web服务器可以供个人的或小规模的网站使用,并且,如果现有的服务器不支持Servlet的话,要加上这个部分的功能往往也是免费的或者只需要极少量的投资。而且,当Servlet与一个JavaBeans类结合在一起的时候就提供了一种可以使内容和显示逻辑分开的简单方式。将内容和显示逻辑分开的优点是负责更新页面外观的工作人员不需要懂得Java代码,而且更新JavaBeans类的工作人员也不需要是设计网页的内行,而可以用包含有JavaBeans类的JSP页面来定义Web模板,从而建立一个由具有相似外6观的页面组成的网站。由JavaBeans类来负责数据的提供,这样,在模板中就没有了Java代码,同时也意味着这些模板就可以由一个HTML编写人员来维护。当然,JavaServlet也可以用来控制网站的逻辑,通过用JavaServlet调用JSP文件的方式来分离一个网站的逻辑和内容。这种分离网站的逻辑和内容的设计方法做一些更深入的描述。在选择使用一个JavaServlet,还是一个JSP页面时,要记住的是,JavaServlet是一个程序设计工具,它最适用于不需要频繁修改的低级应用功能;而JSP页面则通过以显示为中心的描述性的方法将动态内容和逻辑结合在一起。对于使用一个JSP页面的简单的基于Web的应用程序,可以使用定制标记或者Scriptlet,而不是使用JavaBeans类来将内容与应用逻辑结合起来。定制标记被打包到一个标记库中,并被引入到一个JSP页面中。Scriptlet是直接嵌入在JSP页面中的很小的Java代码段。一般来说,在实际的JSP引擎中,JSP页面在执行时是编译式,而不是解释式的。解释式的动态网页开发工具如ASP、PHP3等由于速度等原因已经满足不了当前大型网站应用的需要了,传统的开发技术都在向编译执行的方式改变,如ASPASP+PHP3PHP43。JSP与ASP相比,ASP与JSP两者是比较类似的技术。但同时JSP具有两方面的优点。首先,它的动态部分使用Java语言编写,而不是VBScript或是其他的Microsoft语言,因此不仅它的功能会更加强大而且它会更易于使用。第二,JSP应用可以移植到其他的操作系统或者非Microsoft的Web服务器上。而尽管JSP的规范书中并没有对JSP引擎要使用编译式的执行方式提出实际的要求,但是一般情况下是不会使用解释的方式来执行JSP页面的。通常说来,JSP页面一般会翻译为Servlet的Java源文件,之后再经过Java的编译器编译为Servlet的class格式文件。而其中要编译为Servlet的原因是为了让原先的Servlet引擎可以直接服务于JSP,这样JSP引擎就只需要将JSP转译为Servlet就可以了。但是因为JSP规范书中并没有规定将JSP页面转译为Servlet的方法,因此,不同的JSP引擎会出现不同的转译结果。在JSP文件转译为Servlet以后,每次客户机(通常是用户的Web浏览器)向服务器请求这一个JSP文件的时候,服务器将检查自上次编译后JSP文件是否有改变,如果没有改变,就直接执行Servlet,而不用再重新编译,其效率是相当高的。一般来说,JSP文件的编译是在第一个用户访问到这个JSP页面时发生,而这第一个用户通常是开发人员自己,这样,正式放在服务器上让用户访问的JSP文件一般都已经有了对应的编译好的Servlet了。许多服务器都有设置,可以使JSP文件在第一个用户访问之前就预先编译好,这样看来,效率就更高了。在JSP规范书中,并没有明确要求JSP中的程序代码部分(称为Scriptlet)一定要用Java来写,实际上,有一些JSP引擎就是采用的其他脚本语言,如:EMAC-Script、WebL4等等,但实际上这几种脚本语言也是构建在Java上面,编译为Servlet来实现的。按照JSP规范书,完全和Java没有任何关系的Scriptlet也是可以的,不过,由于JSP的强大功能主要在于能和JavaBeans、EnterpriseJavaBeans5一起工作,所以即使是Scriptlet部分不使用Java,编译成的执行代码也应该是与Java相关的。JSP与纯Servlet相比并没有增加任何本质上Servlet无法实现的功能,但是,在JSP中编写静态的HTML会更加方便,因为不需要再用println语句来输出每一行HTML的代码。而更重要的是,通过网页内容和外观的分离,页面制作的工作中不同性质的任务就可以方便地分开,比如,页面设计专家进行HTML设计工作的同时可以留出空间供Servlet程序员插入动态内容。服务器端包含(Server-SideInclude,SSI)是一种可以实现在静态HTML中引入外部代码的深受欢迎的技术。JSP和SSI相比,JSP在这方面的支持更为完善。因为它7可以使用Servlet而不是独立的程序来生成动态内容。另外,实际上SSI只能用于简单的包含,而不能够面向那些可以处理表单数据或访问数据库的“真正的”程序。JavaScript可以在客户端动态地生成HTML。虽然JavaScript很有用,但是与JSP相比,它只能处理以客户端环境为基础的动态信息。除了Cookie之外,HTTP状态和表单提交数据对JavaScript来说都是不可用的。另外,由于是运行在客户端,因此JavaScript不能访问服务器端资源,比如数据库、目录信息等等。JSP的特点可以归纳为:可以把内容的生成和显示分离:借助JSP技术,Web页面的开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP的标识或者小脚本可以生成页面上的动态内容。所生成的内容的逻辑被封装在标识JavaBeans组件中,并且被捆绑在小脚本中,所有的脚本都运行在服务器端。如果核心逻辑被封装在标识和JavaBeans中,那么其他的工作人员,比如Web管理人员和页面的设计者,可以编辑或使用JSP页面,同时不会影响其内容的生成。在服务器端,JSP引擎负责解释JSP标识和小脚本,生成所请求的内容,例如,通过访问JavaBeans组件,使用JDBCTM技术来访问数据库或者包含文件,并且将结果以HTML或者XML页面的形式发送给浏览器。这样有利于程序员保护自己的代码,而且还可以保证任何基于HTML的Web浏览器是完全可用的。强调组件的可重用性:绝大多数的JSP页面依赖于可重用,跨平台的组件,如JavaBeans或者EnterpriseJavaBeansTM组件,来处理应用程序所要求的更为复杂的请求。开发人员可以共享与交换执行普通操作的组件,或者让这些组件可以被更多的使用者或者客户团体来使用。基于组件的方法使总体开发过程得以加速,并且使得各种组件在它们现有的技能与优化结果的开发努力之间得到平衡。运用标识使得页面开发简化:Web页面的开发人员未必都熟悉脚本语言。JavaServerPage技术中封装了许多功能,要在易用的、与JSP相关的XML标识中生成动态内容时需要用到这些功能。标准的JSP标识可以完成对JavaBeans组件的访问与实例化,设置或检索组件的属性,下载小应用组件,以及执行一些如果用其他方法会更难于编码并且更加耗时的功能。通过开发定制化的标识库,JSP技术得以扩展。日后,第三方的开发人员和其他工作人员就可以为自己常用的功能创建个人的标识库。这使得Web页面的开发人员可以使用自己熟悉的工具与像标识一样的、执行特定功能的构件来完成工作。JSP技术可以很容易地整合至多种应用体系结构中,这样可以利用到现有的工具和技巧,并且能够扩展到支持企业级的分布式应用。作为使用Java语言的一部分,以及Java2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的、基于Web的应用。由于JSP页面内置脚本语言是基于Java语言编写的,而且所有的JSP页面都被编译成为JavaServlet,因此JSP页面就具有了Java技术所有的优势,包括存储管理的健壮性和安全性。JSP作为Java平台的一部分,也拥有了Java语言“一次编写,到处运行”的优点。随着越来越多的供应商把JSP支持添加到他们的产品中,我们可以使用自己选择的服务器与工具来更改服务器或工具而并不会影响到当前的应用。2.3.3JSP开发WEB的几种方式JSP作为J2EE的一部分,既可以用于开发小型的Web站点、也可以用于开发大型的、信息用户级的应用程序,本节将讲述对于不同规模的Web系统,使用JSP进行开发的不同方式。(1)直接使用JSP8对于最小型的Web站点,可以直接使用JSP来构建动态网页,这种站点最为简单,所需要的仅仅是简单的留言板、动态日期等基本的功能。对于这种开发模式,一般可以将所有的动态处理部分都放置在JSP的Scriptlet中,就像一般使用PHP或ASP开发动态网页一样。(2)JSP+JavaBeans中型站点面对的是数据库查询、用户管理和小量的银行牌号管理业务逻辑。对于这种站点,不能将所有的东西全部交给JSP页面来处理。在单纯的JSP中加入JavaBeans技术将有助于这种中型网站的开发。利用JavaBeans,将很容易完成如数据库连接、用户登录与注销、银行牌号管理业务逻辑封装的任务。如:将常用的数据库连接写为一个JavaBeans,既方便了使用,又可以使JSP文件简单而清晰,通过封装,还可以防止一般的开发人员直接获得数据库的控制权。(3)JSP+JavaBeans+Servlet无论用ASP还是PHP开发动态网站,长期以来都有一个比较重要的问题,就是网站的逻辑关系和网站的显示页面不容易分开。常常可以看见一些夹杂着ifthen、caseselect或是if和大量显示用的HTML代码的ASP、PHP页面,即使是有着良好的程序写作习惯的程序员,其作品也几乎无法阅读。另一方面,动态Web的开发人员也在抱怨,将网站美工设计的静态页面和动态程序和并的过程是一个异常痛苦的过程。如何解决这个问题呢?在JSP问世以后,Servlet已经完全可以被JSP代替,然而,事实是Servlet在不再担负动态页面生成的任务以后,开始担负起决定整个网站逻辑流程的任务。在逻辑关系异常复杂的网站中,借助于Servlet和JSP良好的交互关系和JavaBeans的协助,完全可以将网站的整个逻辑结构放在Servlet中,而将动态页面的输出放在JSP页面中来完成。在这种开发方式中,一个网站可以有一个或几个核心的Servlet来处理网站的逻辑,通过调用JSP页面来完成客户端(通常是Web浏览器)的请求。后面我们将可以看到,在J2EE模型中,Servlet的这项功能可以被EJB取代。(4)J2EE开发模型在J2EE开发模型中,整个系统可以分为三个主要的部分:1视图视图就是用户界面部分,在Web应用程序中也就是HTML、XML、JSP页面。这个部分主要处理用户看到的东西,动态的JSP部分处理了用户可以看见的动态网页,而静态的网页则由HTML、XML输出。2控制器控制器负责网站的整个逻辑。它用于管理用户与视图发生的交互。可以将控制器想象成处在视图和数据之间,对视图如何与模型交互进行管理。通过使视图完全独立于控制器和模型,就可以轻松替换前端客户程序,就是说,网页制作人员将可以独立自由地改变Web页面而不用担心影响这个基于Web的应用程序的功能。在J2EE中,控制器的功能一般是由Servlet、JavaBeans、EnterpriseJavaBeans中的SessionBean来担当的。3模型模型就是应用业务逻辑部分,这一部分的主要角色是EnterpriseJavaBeans,借助于EJB强大的组件技术和信息用户级的管理控制,开发人员可以轻松地创建出可重用的业务逻辑模块。MVC模型不仅能够实现功能模块和显示模块的分离,同时也提高了应用系统的可9移植性、可维护性、可扩展性与组件的可复用性。在早期的程序中,如果没有注意到对数功能与显示的解耦合,常常会使得程序变得十分复杂且难以维护。很多的VB、Delphi等RAD程序都存在这样的问题,甚至,现在的C#、Java程序中有时也会有把业务逻辑写在显示模块中的现象。MVC的设计模式分为:表现层(Presentationlayer),业务逻辑层(Businessla
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025标准水泥购销合同模板
- 2025采购合同审批制度
- 2024年四川广安鑫鸿集团有限公司招聘工作人员真题
- 乡村徒步游径行业跨境出海项目商业计划书
- 书法装饰画框题字创新创业项目商业计划书
- 2025年二手电商平台信用评价与用户信用修复报告
- 大运会物理题目及答案
- 大学离谱题目大全及答案
- 大人思维训练题目及答案
- 三基三严考试试题及答案b超
- 职业病分类与目录
- 初三中考英语高频词汇单选题100道及答案解析
- 2024年资料员考试题库及完整答案(历年真题)
- 老年脑卒中护理
- 门窗安装施工安全标准方案
- Module 3 Unit 1 Do you like bananas(说课稿)-2024-2025学年外研版(一起)英语二年级上册
- 外卖代理授权合同范例
- 白酒寄售合同协议书范文模板
- 历代中医名人
- 天津能源投资集团科技有限公司招聘笔试题库2024
- 垃圾渗滤液处理站运维及渗滤液处理投标方案(技术方案)
评论
0/150
提交评论