- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE
PAGE 1
Java访问SQL数据库的优化探讨
摘要:访问数据库是Java应用的重要环节。通过选择合适的驱动程序、采用连接池技术、优化SQL语句以及优化数据库可以提高Java访问SQL数据库的效率。
关键词:Java;SQL数据库;优化;JDBC
中图分类号:TP311.13文献标识码:A文章编号:1007-9599(2012)21-0000-02
随着Java技术的不断成熟,Java在电子平台中的应用越来越广泛。而数据库存储着大量数据,访问数据库的效率非常重要。任何语言想要访问数据库,必须与数据库建立连接。Java语言通过JDBC访问数据库,JDBC是用于执行SQL语句的JavaApi。JDBC可以与数据库建立连接,发送SQL语句,还可以处理数据库返回的结果。
1选择合适的驱动程序
1.1JDBC-ODBC网桥驱动程序
JDBC-ODBC网桥驱动程序[1]的特点是将JDBC操作转换成ODBC操作。首先在本地计算机上安装ODBC驱动程序,然后通过JDBC-ODBC网桥,将Java程序中的JDBC访问指令转换为ODBC访问指令,接着通过ODBC驱动程序完成数据库的访问。
1.2JDBC-Native驱动程序
JDBC-Native驱动程序的特点是将JDBC程序编程接口转换为本地的程序编程接口。JDBC-Native驱动程序也需要在本地计算上安装好特定的驱动程序。
1.3纯Java的JDBC中间件驱动程序
纯Java的JDBC中间件驱动程序不需要在本地计算机上安装特定的驱动程序,但是需要安装数据库管理系统服务器的中间件,服务器的中间件可以支持多种数据库的访问,还可以负责数据库的转换。首先将JDBC访问转换成网络标准协议,接着由服务器端的中间件转换为专用的访问指令。
1.4纯Java的JDBC驱动程序
纯Java的JDBC中间件驱动程序也不需要在本地计算机上安装特定的驱动程序,由JDBC驱动完成所有的数据库操作。由数据库厂商提供这一类的驱动程序,将JDBC调用转换为数据专用的访问指令,效率非常高。
JDBC-ODBC网桥驱动程序要求客户端必须安装ODBC驱动程序,不适合基于网络的应用,而且执行效率低,也不适合大数据量存取的应用;JDBC-Native驱动程序结合其他三种驱动程序的特点,可以利用本地代码库加速数据库的访问,而且支持多数据库,与数据库紧密结合,扩展数据库的性能;纯Java的JDBC驱动程序支持多数据库,具有灵活的特点;纯Java的JDBC驱动程序和本机数据库紧密结合,是可靠有效的驱动程序,也是企业的首选软件。根据不同情况,采用不同的驱动程序,可以提高访问数据库的效率。
2采用连接池技术
Java访问数据库的时候,需要同时访问多个不同的数据库。数据库连接是有限资源,一旦某一程序耗尽数据库资源,那么就会影响其他的应用程序。采用连接池技术,使用同一个连接池,访问不同的数据库,可以有效地节约资源,提高数据库的访问效率。
连接池[2]的核心是连接复用。建立一个数据库连接池,负责数据库连接的分配和管理,允许不同的应用程序共享现有的数据库连接,避免数据库的频繁建立和关闭,使连接池中的连接得到高校的复用。更重要的是通过监视数据库连接的使用情况,可以及时对系统的开发和性能进行调整。
通过使用空闲池可以实现对连接的管理,也就是按照时间将那些已经创建却没有分配的连接存放到空闲池[3]中。当用户请求一个连接的时候,系统首先检查空闲池内的空闲连接。如果空闲池内存在空闲连接,那么就把创建时间最长的那个连接分配出去;如果空闲池内没有空闲连接,那么就检查当前的连接池是否允许连接,如果允许,就等待一定时间,如果不允许,就重新建立一个连接,如果等待的时间内连接池内有连接释放出来,那么就将其分配给用户,如果等待时间超过预定时间,还没有连接释放出来,那么就重新返回。
在多层结构的应用程序中,使用连接池技术,可以提高系统的性能。
3优化SQL数据库
3.1使用数据库存储过程
数据库的存储过程[4]主要是为了完成一组具有特定功能的SQL语句集[5],经过编译之后就可以存储到数据库中。当创建存储过程之后,就可以多次调用,比SQL语句的执行快很多。
3.2创建PrepareStatemennt对象
首先,我们来看两个程序片段:
CodeFragment1:
StringupdateString=“UPDATEchengjiSETgrade=25”+“WHERESnoLIKE‘9500%’”;
stmt.exeeuteUpdate(updateString);
CodeFragment2:
PreparedStatementupdate
您可能关注的文档
- _6S_现场管理法在煤炭企业的应用.doc
- “4PS”职业精神培育体系的运行和思考.doc
- “90后”入殓师组合_用青春触摸生死.doc
- “班班通”在高中新课改暨构建“道德课堂”中的应用.doc
- “不过”的主观性与交互主观性建构.doc
- “电子数据”作为证据的尴尬局面及应对措施.doc
- “电子数据”作为证据的尴尬局面及应对措施-.doc
- “豆眼里的幼儿园”系列6——午睡小插曲.doc
- “对联拟写题”试指津.doc
- “对联拟写题”应试指津.doc
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)