- 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文档。上传文档
查看更多
Java访问SQL数据库优化探析
Java访问SQL数据库优化探析摘要:访问数据库是Java应用的重要环节。通过选择合适的驱动程序、采用连接池技术、优化SQL语句以及优化数据库可以提高Java访问SQL数据库的效率。
关键词:Java;SQL数据库;优化;JDBC
中图分类号:TP311.13 文献标识码:A 文章编号:1007-9599 (2012) 21-0000-02
随着Java技术的不断成熟,Java在电子平台中的应用越来越广泛。而数据库存储着大量数据,访问数据库的效率非常重要。任何语言想要访问数据库,必须与数据库建立连接。Java语言通过JDBC访问数据库,JDBC是用于执行SQL语句的Java Api。JDBC可以与数据库建立连接,发送SQL语句,还可以处理数据库返回的结果。
1 选择合适的驱动程序
1.1 JDBC-ODBC网桥驱动程序
JDBC-ODBC网桥驱动程序[1]的特点是将JDBC操作转换成ODBC操作。首先在本地计算机上安装ODBC驱动程序,然后通过JDBC-ODBC网桥,将Java程序中的JDBC访问指令转换为ODBC访问指令,接着通过ODBC驱动程序完成数据库的访问。
1.2 JDBC-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对象
首先,我们来看两个程序片段:
Code Fragment 1:
String updateString=“UPDATE chengji SET grade=25”+“WHERE Sno LIKE 9500%’”;
stmt.exeeuteUpdate(updateString);
Code Fragme
您可能关注的文档
- Association of MMP—9 gene polymorphisms with acute coronary syndrome in the Uygur population of China.doc
- BC—3000血细胞研究仪计数血小板及其参数及XT—2000i血细胞研究仪差异研究.doc
- Beyonce&Jay—Z-音乐界抢钱夫妻.doc
- BT模式在南京南站综合枢纽工程中应用.doc
- Being There旅行真谛-心随身至.doc
- Carried Away By Emotion….doc
- Blog在教育教学中应用探析.doc
- CBI模式下大学英语分类教学.doc
- CDIO教育模式在数据结构及算法教学中应用.doc
- CFB锅炉炉内喷钙脱硫系统工艺优化.doc
文档评论(0)