在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
本文将从JDBC的作用,JDBC的连接步骤和JDBC的最佳实践三个方面来详解JDBC的运行过程,感兴趣的同学可以接着往下看,相信你一定会有所收获。

一、JDBC的作用
JDBC的全称是Java DataBase Connection,也就是Java数据库连接,我们可以用它来操作关系型数据库。JDBC接口及相关类在java.sql包和javax.sql包里。我们可以用它来连接数据库,执行SQL查询,存储过程,并处理返回的结果。
JDBC接口让Java程序和JDBC驱动实现了松耦合,使得切换不同的数据库变得更加简单。
二、JDBC的连接步骤
执行一次JDBC连接,分六个步骤进行:
1. 导入包
在程序中包含数据库编程所需的JDBC类。大多数情况下,使用 import java.sql.* 就足够了。
2. 注册JDBC驱动程序
需要初始化驱动程序,这样就可以打开与数据库的通信。
3. 打开一个连接
使用DriverManager.getConnection()方法来创建一个Connection对象,它代表一个数据库的物理连接。
4. 执行一个查询
需要使用一个类型为Statement或PreparedStatement的对象(两者区别看后文),并提交一个SQL语句到数据库执行查询。
5. 从结果集中提取数据
这一步中演示如何从数据库中获取查询结果的数据。使用ResultSet.getXXX()方法来检索的数据结果。
6. 清理环境资源
在使用JDBC与数据交互操作数据库中的数据后,应该明确地关闭所有的数据库资源以减少资源的浪费。
三、JDBC的最佳实践
数据库资源是非常昂贵的,用完了应该尽快关闭它。Connection, Statement, ResultSet等JDBC对象都有close方法,调用它就好了。
在代码中必须显式关闭掉ResultSet,Statement,Connection,如果你用的是连接池的话,连接用完后会放回池里,但是没有关闭的ResultSet和Statement就会造成资源泄漏了。
在finally块中关闭资源,保证即便出了异常也能正常关闭。
大量相似的查询应当使用批处理完成。
尽量使用PreparedStatement而不是Statement,以避免SQL注入,同时还能通过预编译和缓存机制提升执行的效率。
如果你要将大量数据读入到ResultSet中,应该合理的设置fetchSize以便提升性能。
你用的数据库可能没有支持所有的隔离级别,用之前先仔细确认下。
数据库隔离级别越高性能越差,确保你的数据库连接设置的隔离级别是最优的。
如果你需要长时间对ResultSet进行操作的话,尽量使用离线的RowSet。
以上就是JDBC的运行过程的全部内容,都是干货哟,还不明白的同学可以上博学谷官网进行咨询。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
长春IT培训机构哪个好?为什么?
随着几年互联网公司的崛起,IT行业也成为了高薪资好前景的朝阳产业。可以预见的是IT人才将在未来很长一段时间内一直保持紧缺,因此学IT成为了许多人改变命运,走上职业巅峰的不二选择。一般来讲,参加IT培训最好在北上广深这样的一线城市,可能在长春这样的非一线城市的朋友会问了:长春IT培训机构哪个好?为什么?这里给大家的建议是,最好选择线上的IT培训机构,具体原因我们接下来一起看看。
7499
2020-02-13 13:54:14
C语言零基础入门教程推荐
学习C语言基本上是每一个程序员的必修课,因此C语言的重要性和优点早已不言而喻。简单来讲,C语言语法清晰,结构简单,程序执行效率高,可以说是为操作系统而生。那么我们该如何学习C语言呢?尤其是对于零基础的学习者来讲,要自学入门C语言并不轻松。本文将为大家推荐博学谷的《零基础C语言入门教程》,需要学习的朋友赶紧来看看吧!
6428
2020-02-20 19:17:38
Java和Python应该学哪个好?
随着IT编程成为大热的学习科目,许多人对于Java和Python应该学哪个好,充满了疑问。因为Java和Python都是目前风头强劲的编程语言,下面我将带大家好好认识一下这两种编程语言,并带大家看看它们的区别,以及应用场景和薪资待遇。相信大家看完之后,对于上面这个问题会有自己的答案。
7290
2020-04-24 18:13:07
在工作中没有成长应该怎么办?
许多互联网工作者常常有这样的感觉,工作了大半年,还做着最初级的工作。比如每天都是敲代码完成需求,或者是画原型写文档,更甚者一直给公司打杂辅助别人的工作。而且也不知道业余时间该干什么,不知道该如何去提升自己,或者说不知道要从哪些方面入手来提升。下面我们就来聊聊“在工作中没有成长应该怎么办”。
8815
2020-07-30 14:28:11
为什么移动设备的开源解决方案这么少?
众所周知,我们如今处在一个开源的时代。无论是从 Web 技术和编程语言,还是操作系统,我们可以找到任何东西的开源来实现类似效果。但移动设备明显是一个例外,它的开源解决方案很少。一位从事开源技术的微软软件工程师也曾指出:开源面对移动设备时,显得心有余而力不足。
5113
2021-11-03 18:45:55
