基于JSP的WEB数据库访问技术的研究.docx
- 文档编号:24356622
- 上传时间:2023-05-26
- 格式:DOCX
- 页数:63
- 大小:1.46MB
基于JSP的WEB数据库访问技术的研究.docx
《基于JSP的WEB数据库访问技术的研究.docx》由会员分享,可在线阅读,更多相关《基于JSP的WEB数据库访问技术的研究.docx(63页珍藏版)》请在冰豆网上搜索。
基于JSP的WEB数据库访问技术的研究
基于JSP的WEB数据库访问
技术的研究
基于JSP的Web数据库的访问技术
的研究
ResearchonAccessTechnologytoWEBDatabase
BasedonJSP
摘要
Web数据库技术伴随着WWW的成长,成为当前信息技术人员关注的热点之一。
基于Web的数据库访问技术是指:
在客户端,安装Web浏览器作为用户输入查询条件和显示查询结果的交互界面。
目前,人们普遍采用ASP技术作为动态网站建设的技术,虽然用ASP开发服务器程序的技术已经很成熟,但是ASP技术也存在着很多缺陷,如安全性低,适应性差,维护复杂等。
随着JAVA和JSP技术的出现,为网站建设又开辟出了一条崭新的道路。
本文介绍了Web数据库访问的一些技术及他们的优缺点,再着重介绍了JAVA技术中的JSP、JavaBean、MVC、JDBC、ConnectionPool等技术,再通过基于JSP相关技术的WEB网站开发实例来诠释JSP技术在WEB开发中的优势及地位,最后表达了Web数据库不久的将来发展的一个趋势。
关键词:
JSP、JDBC、MVC、JavaBean、ConnectionPool、非结构化数据库、异构数据库
Abstract
theWWWWebdatabasetechnologywiththegrowthofinformationtechnology,becomethefocusofattentionpersonnel.BasedontheWebdatabaseaccesstechnologyreferstotheclient,installaWebbrowserdisplayconditionsanduserinputinquiresinterfacequeryresult.Now,itisgenerallyUSESASPtechnologyasadynamicwebsiteconstructiontechnology,althoughuseASPserverprogramtechnologyhasdevelopedverymature,buttheASPtechnologyexistsmanydefects,suchassafety,maintenanceunadaptable,etc.AsJAVAandJSPtechnologyforwebsiteconstructionandopenanewroad.ThepaperintroducessomeWebdatabaseaccesstechnologyandtheiradvantagesanddisadvantages,thenemphaticallyintroducestheJSP,JAVAtechnologiesJavaBean,MVC,JDBCConnectionPooltechnology,basedonJSP,againthroughtheWebsitesrelatedtechnologiestodevelopWebdevelopmentininterpretationJSPtechnology,theadvantageandthefinalexpressedWebdatabaseinthenearfuturedevelopmenttrend.
Keywords:
JSP,JDBCConnection,andMVC,JavaBeanPool,non_structuraldatabase,heterogeneousdatabase
目录
摘要3
绪论4
第1章5
访问WEB数据库的技术分析5
1.1WWW网络环境下Web数据库5
1.2访问Web数据库的几种技术6
1.2.1CGI(公共网关接口)技术7
1.2.2web服务器专用API技术7
1.2.3ODBC技术8
1.2.4ASP与ADO技术8
1.2.5JSP/JDBC技术9
1.2.6PHP技术10
1.3访问WEB数据库几种技术优缺点比较10
1.3.1CGI的优缺点分析10
1.3.2webAPI技术的优缺点分析10
1.3.3ODBC技术优缺点分析11
1.3.4ASP技术优缺点分析11
1.3.5JSP/JDBC优缺点分析12
1.3.6PHP技术优缺点分析12
第二章14
JAVA14
2.1JAVA简介14
2.2JavaWeb及相关技术14
2.2.1JSP技术14
2.2.2Servlet技术15
2.2.3JavaBean17
2.2.4MVC设计模式18
2.3JSP的特点和其他动态网页开发技术的比较19
2.3.1JSP的特点:
19
2.3.2JSP与PHP比较20
2.3.3JSP与ASP比较20
2.3.4JSP与其他技术比较结果20
2.2.4动态网页技术的性能比较:
21
第3章22
Web数据库的访问与连接22
3.1JDBC22
3.1.1JDBC定义:
22
3.1.2JDBC用途及特点22
3.1.3JDBC的体系结构23
3.1.4构成JDBC的组件24
3.1.5影响JDBC性能的可能因素24
3.1.6JDBC与ODBC和其它API的比较25
3.1.7JDBC访问数据库步骤26
3.1.8JDBC访问数据库程序实例27
3.2JDBC驱动程序性能的优化28
3.3连接池(ConnectionPool)32
3.3.1连接池的定义32
3.3.2使用连接池的优点32
3.3.3连接池运作原理33
3.3.4推荐使用连接池33
3.3.5连接池比长连接更安全34
第4章35
基于JSP的Web网站创建与研究实例35
4.1开发环境的配置35
4.1.1安装Tomcat35
4.1.2安装MyEclipse插件35
4.1.3部署Tomcat步骤35
4.2创建JSP项目步聚37
4.3企业宣传网站实例39
4.3.1创建一个WEB工程39
4.3.2网站涉及页面39
4.3.3项目框架搭建40
4.3.4公共类的创建40
4.3.5创建数据库41
4.3.6创建实体类41
4.3.7公共类的实现及SQL相关参数设置42
4.3.8用户表USERS的创建43
4.3.9聊天室用户登录验证43
4.3.10注册用户及显示所有用户44
4.3.11商品类及相关页面45
4.3.12新闻业务类46
4.3.13聊天窗口47
4.3.14后台管理及逻辑48
4.3.15新留言本的实现50
4.3.16后期完善工作50
第5章54
21世纪Web数据库发展的趋势54
5.1WWW网络环境下Web数据库54
5.2Web数据库的发展趋势55
5.2.1.非结构化数据库55
5.2.2.异构数据库系统55
5.3Web应用系统体系结构56
结论58
致谢59
参考文献60
绪论
WorldWideWeb(www)是当今Internet上最主要的信息服务,静态Web站点中各种形式的数据以文件方式存在,当信息量以几何级数增加时信息的发布和维护就显得极为困难;而另一方面,用户对信息的实时性、交互性的要求随着信息技术的发展已变得理所应当。
同时,数据库技术经过几十年的发展日益成熟起来,Oracle、DB2、Informix、Sybase、MSSQLServer等数据库系统的功能日趋强盛。
Web技术与数据库技术的结合能够综合二者的长处、发挥二者的潜力,充分利用已有的数据库信息素材。
基于Web的数据库访问技术是指:
在客户端,安装Web浏览器作为用户输入查询条件和显示查询结果的交互界面。
用户可以通过填写表格或输入要害字的方式来与WWW进行交互当用户单击表格上的按钮时表格中的数据便发送到Web服务器。
这种交互性提高了用户参与的积极性。
在构建基于WEB的企业管理信息系统中,如何通过浏览并查询数据库以及维护数据库成为建设一个有效的网络管理信息系统的关键所在,为了实现基于WEB的数据库访问,需要有WebServer与DBMS(DatabaseManagementSystem)之间的接口,即WEB与数据库的连接技术。
目前,人们普遍采用ASP技术作为动态网站建设的技术,虽然用ASP开发服务器程序的技术已经很成熟,但是ASP技术也存在着很多缺陷,如安全性低,适应性差,维护复杂等。
随着JAVA和JSP技术的出现,为网站建设又开辟出了一条崭新的道路。
JSP是Sun公司基于Java技术推出的新一代站点开发语言,也是一种开发WEB后台程序的技术,它可以在Servlet和JavaBean的支持下,完成功能强大的站点程序开发,特别是对WEB数据库的访问操作设计,目前,几乎所有平台都支持JAVA,JSP+JavaBean可以在所有平台下通行无阴,这是ASP无法比拟的。
此外,与ASP相比,JSP还具有诸如运行速度快(访问数据库),安全性高(Servlet/与JSP分离)易于扩展(JavaBean)特独特优点。
JSP与数据库连接有两种方法,分别是JDBC(JavaBean)技术和连接池(ConnectionPool)技术。
第1章
访问WEB数据库的技术分析
进入70年代后,在社会大系统中出现了巨大的信息流和与之相伴的宏大的数据流,为了适应和满足社会发展的需要,必须采用新的技术和手段来对这些数据进行收集、存储、加工、检索、分类、统计和传输等,于是数据库技术不可避免地产生了。
由于计算机被广泛地应用于数据管理领域以及互联网的迅速普及,人们对数据共享和联机实时处理的要求也越来越高,于是数据库技术又在不断地发展改进。
1.1WWW网络环境下Web数据库
由于Web的易用性、实用性,它很快占据了主导地位,目前已经成为使用最为广泛、最有前途、最有魅力的信息传播技术。
不过,Web服务只是提供了Internet上信息交互的平台,要想实现真正的Internet,就要将人、企业、社会与Internet融为一体,这就要靠信息化应用的实现。
电子商务是以Web网络技术和数据库技术为支撑的,其中Web数据库技术是电子商务的核心技术。
支持电子商务已经成为各大厂商竞争的焦点,Web数据库的发展成为新的热点和难题。
Web数据库,就是能将数据库技术与Web技术很好地融合在一起,使数据库系统成为Web的重要有机组成部分的数据库,能够实现数据库与网络技术的无缝有机结合。
目前,关系数据库的应用范围最广,占据了数据库主流地位。
关系数据库最初设计为基于主机/终端方式的大型机上的应用,其应用范围较为有限,随着客户机/服务器方式的流行和应用向客户机方的分解,关系数据库又经历了客户机/服务器时代,并获得了极大的发展。
随着Internet应用的普及,由于Internet上信息资源的复杂性和不规范性,关系数据库初期在开发各种网上应用时显得力不从心,表现在无法管理各种网上的复杂的文档型和多媒体型数据资源,后来关系数据库对于这些需求作出了一些适应性调整,如增加数据库的面向对象成分以增加处理多种复杂数据类型的能力,增加各种中间件(主要包括CGI、ISAPI、ODBC、JDBC、ASP等技术)以扩展基于Internet应用能力,通过应用服务器解释执行各种HTML中嵌入脚本来解决Internet应用中数据库数据的显示、维护、输出以及到HTML的格式转换等。
此时关系数据库的基于Internet应用的模式典型表现为一种三层或四层的多层结构。
在这种多层结构体系下,关系数据库解决了数据库的Internet应用的方法问题,使得基于关系数据库能够开发各种网上数据库数据的发布、检索、维护、数据管理等一般性应用。
1.2访问Web数据库的几种技术
WEB数据库实现的关键技术要解决两个方面的问题,一要实现将客户端文件资料通过浏览器上载到WEB服务器,并将文件内容保存到数据库中;二是要实现从数据库中读取资料内容,并将内容发送到客户端浏览器。
以客户端的WEB游览器为用户的交互界面,通过它输入查询条件和显示查询结果。
用户可以与WWW进行交互,例如填写表单方式,当用户单击表格上的按钮时,表格里的数据传送至要被处理的脚本或应用程序中。
最后,服务器将返回结果插入到静态HTML页面,传送至客户端以响应用户。
人们通过统一的浏览器可以访问不同的数据库。
实现WEB数据库的应用通常有两种方法:
另一种是WEB服务器羰提供中间件连接WEB服务器和数据库服务器;别一种是把应用程序下载到客户端直接访问数据库。
所有涉及WEB数据库的连接访问,其目的都是保持与数据库的快速连接。
下面我们对这些访问技术进行分析研究。
目前,在Windows操作系统平台上,主要有下述几种访问Web数据库的技术。
1.2.1CGI(公共网关接口)技术
CGI是较早实现的访问Web数据库的技术,并在商务网站的开发中起着重要的作用。
目前在商务网站的创建过程中,CGI常常被用来对HTML表单和后台数据库进行操作,例如,利用CGI对数据库中的数据进行搜索、添加和修改等。
执行CGI时可以生成HTML文档,并将该文档返回Web服务器。
CGI还能够与用户浏览器进行交互,并通过API与数据库服务器进行通信。
使用CGI方式访问Web数据库有一些缺点,例如,不易开发和维护应用程序,功能有限、不易查错、执行速度慢,并且不兼容HTML文档等。
此外,一个运行中的CGI程序不能为多个用户共享,对于新的请求必须启动新的进程。
1.2.2web服务器专用API技术
数据库程序的一个关键组件是数据库API(ApplicationProgramInterface)。
每个数据库引擎都带有一系列库(如WindowsNT下使用的动态链接库)。
只有通过这种库,应用程序才能连接和使用数据库引擎。
对于特定的数据库产品,应用程序对动态链接库的调用是专用的。
根据定义,每种数据库系统都有属于自己的专有调用接口,例如对SQLServer设计的API程序,就不能用它访问Oracle或Informix数据库。
Web服务器的供应商为了扩展服务器的性能,各自开发了API应用程序接口来取代CGI。
目前最流行的两种API是Microsoft的ISAPI和Netscape的NSAPI,这两种接口允许我们以标准方式编写Web服务器交互的应用程序。
其中对数据库访问的功能主要是以IDC文件形式提供给客户的,在IDC文件中定义了数据源、返回的模板以及动态的SQL语句。
ISAPI是Microsoft提供的一套面向Internet服务的API接口,用它编制的程序以动态链接库(DLL)的形式存在,可实现CGI程序所能提供的全部功能。
ISAPI的工作原理和CGI大体上是相同的,都是通过交互式主页取得用户输入信息,然后交服务器后台处理。
但是二者在实现机制上大相径庭。
ISAPI与CGI最大的区别在于:
在ISAPI下建立的应用程序都是以动态链接库的形式存在的;而CGI的应用程序一般都是可执行程序,因此ISAPI的运行效率要显著高于CGI程序。
1.2.3ODBC技术
API方法与Web服务器结合紧密,所以性能较高。
但是利用底层的API开发数据库访问程序仍然很困难,因此一般使用基于底层API的高层数据库编程接口,这就是我们所说的ODBC。
ODBC是"开放数据库互连"的简称,是一种使用SQL的应用程序接口(API)。
ODBC一个最显著的优点是用它生成的程序与数据库或数据库引擎是无关的。
ODBC可使程序员方便地编写访问各DBMS厂商的数据库的应用程序,而不需了解其产品的细节。
Web服务器通过数据库驱动程序ODBC向数据库服务器发出SQL请求,数据库服务器接到的是标准的SQL查询语句,数据管理系统执行SQL查询并将查询结果再通过ODBC传回Web服务器。
许多服务器扩展程序使用包含ODBC层的系统结构。
ODBC是为调用关系数据库提供统一途径的一类API,由于它适用于许多不同的数据库产品,因此是服务器扩展程序开发者们理所当然的选择。
1.2.4ASP与ADO技术
ASP(ActiveServerPage,现行服务器页)是一个服务器端的脚本执行环境,用户可用它产生和执行动态的、交互的、高性能的Web服务器应用程序。
当程序在服务器而不是在客户端执行时,Web服务器将完成产生浏览器的HTML页的所有工作。
当浏览器向Web服务器提出文件(.asp)请求时,一个ASP脚本就开始执行,这时Web服务器调用ASP,把该文件全部读入并执行每一条命令,然后将结果以HTML的页面形式送回浏览器。
由于ASP在服务器上运行,所以ASP的源程序代码不会传到用户的浏览器,可保护源程序不会外漏。
此外,ASP也是面向对象的,而且还可自己制作ActiveX服务器组件来扩充功能,可使用VB,Java,VisualC++,COBOL等程序语言来实现。
ADO是ASP内置的一个组件,含有多个用于在ASP脚本程序中访问后台数据库的ActiveX数据对象。
使用ASP编程访问Web数据库时,必然要使用ADO组件中的这些数据对象。
ASP和ADO相结合,为Web数据库的访问提供了一个完整的解决方案。
利用ASP与ADO访问Web数据库时,首先由客户端浏览器向Web服务器请求某个ASP页面(该页面中含有访问数据库的语句),Web服务器随后启动该页面中的ASP脚本程序,然后通过调用ADO对象和ODBC接口实现对Web数据库的访问,最后再由Web服务器将访问的结果返回到客户端浏览器。
1.2.5JSP/JDBC技术
Java语言显示出优于以往编程语言的诸多特色,赢得了众多数据库厂商的支持。
为了同时连接到多个数据库进行并行的联合查询,可以充分利用Java语言本身的特色。
由于Java是一种面向对象的、多线程的网络编程语言,因此能够用多个线程对应多个不同的数据库进行查询操作。
用户发出的同一条查询语句同时启动多个线程,并行运行,同时进行异构数据库的联合查询。
在数据库处理方面,Java提供了JDBC(Java数据库连接:
JavaDatabaseConnectivity),为数据库开发应用提供了标准的应用程序编程接口。
与ODBC类似,JDBC也是一种特殊的API,是用于执行SQL语句的Java应用程序接口(JavaAPI),它规定了Java如何与数据库进行交互作用。
JDBC由一组用Java语言写的类和接口组成,利用Java机制设计的标准SQL数据库连接接口JDBC去访问数据库。
JDBC也是一种规范,其宗旨是让各数据库开发商为Java程序员提供标准的数据库访问类和接口。
JDBC与Java结合,使用户很容易地把SQL语句传送到任何关系数据库中,程序员用它编写的数据库应用软件,可在各种数据库系统上运行。
采用JDBC可以很容易用SQL语句访问任何商用数据库(或称异构数据库),如SQLServer,Sybase或Oracle。
采用Java和JDBC编写的数据库应用程序具有与平台无关的特性,很容易用SQL语句访问任何商用数据库,而不必为每一种数据库平台编写不同的程序。
与ODBC一样,JDBC提供给程序员的编程接口由两部分组成,即面向应用的编程接口JDBCAPI和供底层开发的驱动程序接口JDBCDriverAPI。
JDBCAPI是为应用程序员提供的,是一系列抽象的接口,它使得应用程序员能够进行数据库连接,执行SQL查询,并且得到返回结果。
而JDBCDriverAPI则是为数据库厂商提供的编程接口。
基于Java的JDBC发展迅速。
Sun承诺任何JavaApplet或者Java应用软件都能够与数据库结合。
由于JDBC利用了Java的跨平台特色,因此,它成为Intranet和Internet环境下访问异构数据库的一种较优方式。
JDBC保持了ODBC的基本特性。
两者都基于X/OpenSQL调用级接口(CLI:
CallLevelInterface)标准。
它们的不同就在于JDBC建立在Java语言基础上,并充分利用了其特色,易于使用;ODBC使用的是C界面,C语言大量使用了Java语言中没有的指针功能,不适于以Java为界面的JDBC直接使用。
同时,JDBC确保了"100%纯Java"的解决方案。
这样,JDBC应用无需像ODBC应用那样要进行客户机的安装和管理。
1.2.6PHP技术
PHP是能让你生成动态网页的工具之一。
PHP网页文件被当作一般HTML网页文件来处理并且在编辑时你可以用编辑HTML的常规方法编写PHP。
PHP代表:
超文本预处理器(PHP:
HypertextPreprocessor)。
应用PHP有许多好处。
当然已知的不利之处在于PHP由于是开放源码项目,没有什么商业支持,并且由此而带来的执行速度缓慢(直到PHP4之前)。
但是PHP的邮件列表很是有用而且除非你正在运行像Yahoo!
或者A这样的极受欢迎的站点,你不会感觉出PHP的速度与其他的有什么不同。
最起码我就没有感觉出来!
1.3访问WEB数据库几种技术优缺点比较
1.3.1CGI的优缺点分析
优点是:
跨平台性能好,几乎可在任何操作系统(如DOS、Windows、Unix、OS/2等)上实现。
缺点是:
CGI程序一般都是一个独立的可执行程序,与Web服务器各自占据着不同的进程,且一个CGI程序只能处理一个请求。
对每个请求,CGI都会产生一个新的进程,同一时刻发出的请求越多,服务器产生的进程就越多,耗费的系统资源也越多。
这样,在用户访问的高峰期,网站就会表现出响应时间延长、处理缓慢的情况,甚至可能导致整个网站的崩溃。
另外,CGI的功能有限、开发较为复杂,且不具备事务处理功能,这在一定程度上限制了CGI的应用。
1.3.2webAPI技术的优缺点分析
webAPI技术优点:
webAPI开发程序,性能大大优于CGI程序。
因为webAPI应用程序是与WEB服务器软件处于同一地址空间的DLL,因此所有的WEB服务器进程能勉励直接利用积各种资源,这显然比调用不在同一地址CGI程序所占用的系统时间要短,webAPI的出现解决了CGI的低效问题,与CGI相比,API应用程序与WEB服务器结合更紧密占用的资源要少得多,从而运行的效率却大大提高,同时还能提供更好的保护和安全性。
webAPI的缺点是:
1:
编程比开发CGI程序更加困难,开发API程序需要多线程、进程同步、直接协议等知识。
2:
由于各种不同的API不兼容,缺乏一个统一的业界标准,用某种API编写的程序只能在特定的WEB服务器上运行,使用范围受到了极大的限制。
1.3.3ODBC技术优缺点分析
ODBC优点:
一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。
也就是说,不论是FoxPro、Access还是Oracle数据库,均可用ODBCAPI进行访问。
由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。
ODBC缺点:
MicrosoftDeveloperStudio为大多数标准的数据库格式提供了32位ODBC驱动器。
这些标准数据格式包括有SQLServe
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 JSP WEB 数据库 访问 技术 研究