中数据库访问的性能优化研究

JSP中数据库访问的性能优化研究摘要:在简要介绍了JSP数据库连接技术的基本原理和实现方法的基础上,提出了在数据存储、正确选择驱动程序、使用连接池技术及代码优化等方面改进数据访问效率的措施。关键词:JSP;数据库;连接池中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)24-1283-02ResearchonPerformanceOptimizationofDatabaseAccessingTechnologiesinJSPSHENGZhong-biao(DepartmentofComputerScience,WeinanTeachersCollege,Weinan714000,China)Abstract:ThearticlefirstintroducesthebasicprincipleandthewayhowtousethedatabaseconnectiontechnologyofJSP.Andthenputforwardthemethodofdatabaseaccessbasedondatastorage,thecorrectchoiceofJDBC,thetechnologyofconnectionpoolandtheoptimizationaboutcode.Keywords:JSP;database;connectionpool.1前言目前,基于B/S模式的三层或多层开发模式,已成为开发Web应用普遍采用的方法。在B/S架构的系统中,应用系统要频繁访问数据库,连接数据库需要用户验证,使用以后又要确保它们被正确关闭。因此连接数据库是一种耗时的操作,对数据库的高效访问成为Web应用的关键所在[1]。2JSP中数据库访问技术2.1JDBC数据库访问机制JSP中对数据库的访问是通过JDBC实现的。JDBC是由SUN公司制定的Java数据库连接技术的简称。用来支持独立于任何特定SQL实现的基本SQL功能,提供数据库访问的基本功能。JDBC的一个主要特点就是数据库的互操作性。即就是通过使用JDBCAPI来进行数据库访问,可以在不修改应用程序的情况下,改变所使用的数据库驱动程序(或数据库引擎)。2.2JDBC的功能结构图1为JDBC功能结构图。JDBC的结构分为两层:面向开发人员的JDBCAPI和面向底层的JDBCDriverAPI。2.3JDBC驱动程序的类型[2]1)JDBC-ODBC桥和ODBC驱动程序。2)JDBC网络驱动,为适应应用服务器与数据库服务器分离的结构而提供的方式。3)数据库协议驱动程序,该方式将JDBC与一种通用数据库协议驱动程序相连,利用中间件和协议解释器将该协议驱动程序与某种具体的数据库系统相连。4)本地数据库专用驱动程序。3性能优化方法3.1数据存储方面在数据的存取方面,采用JSP/Servlet+JDBC的技术。Web服务器主要负责接收本地或远程浏览器的HTTP数据请求,中间层的Servlet收到请求,利用JDBC提供的标准API对数据库进行访问和相应的操作处理。Servlet再将查询的数据传给JSP,最后生成标准的JSP页面将结果返回给提出请求的浏览器。这样,不仅将客户端与数据库服务器端分开,同时提高了数据库的访问效率。3.2正确选择JDBC驱动程序3.2.1JDBC驱动程序分析驱动程序1:这种方式借用了现成的ODBC驱动程序,方便了开发人员。但是这种方式增加了一个中间层次,使得访问数据库的效率和可靠性有所下降,而且有些驱动程序不是多线程的,不适合在要求并行访问数据库和数据库驱动程序的情况下使用。驱动程序2:这种类型的驱动程序把对JDBC的调用转化成对DBMS直接使用的网络协议,从而允许Java客户端直接访问DBMS。这类驱动程序性能最好,但是只能访问一种数据库。驱动程序3:这种类型的驱动程序使用不依赖于具体DBMS的网络协议而是与中间服务器通信。驱动程序4:这种类型的驱动程序不是纯JAVA驱动程序,此类驱动程序也必须在本地计算机上先安装好特定的驱动程序,然后通过JDBC-NativeAPIBridge的转换,把Java程序中使用的JDBCAPI转换成NativeAPI,进而存取数据库。这种方法效率比第一类驱动程序效率虽然高一些,但仍然需要在每台客户机上预先安装本地API库,因此不利于维护和使用。3.2.2JDBC驱动程序选择综上所述最佳的JDBC驱动程序类型是第二类,它不会增加任何额外的开销,并且由纯Java语言开发而成,拥有最佳的兼容性。第三类JDBC驱动程序也是不错的选择,它也是由纯Java语言开发而成的,并且中间件也仅需要在服务器上安装。因此,建议最好以第二类和第三类JDBC驱动程序为主要选择。3.3使用连接池技术3.3.1建立连结池的必要性Web应用程序的访问,要面对并发问题。随着用户数量的增加,当前面的用户请求尚未处理完毕时,后面的请求已经到来的可能性就会大大增加。让应用程序...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

文秘专家
机构认证
内容提供者

1

确认删除?