在线客服
扫描二维码
下载博学谷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的运行过程的全部内容,都是干货哟,还不明白的同学可以上博学谷官网进行咨询。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Axure基础课学什么?学了有什么用?
Axure基础课学什么?学了有什么用?其实Axure是一款很容易学习的原型设计工具,基础课的内容涵盖了软件操作、知识点精讲等等。工欲善其事必先利其器,只有先掌握好了Axure的操作,才能做好交互设计。下面小编就为大家介绍一下Axure基础课的内容吧!
4379
2019-09-22 13:50:50
Activity生命周期的知识点详解
在掌握Android应用开发的学习过程中,Activity生命周期相关知识点是必须掌握的基础内容。本文将会为大家详解Activity生命周期的有关知识,带大家了解什么是Activity生命周期,生命周期的流程以及四个状态,最终达到帮助大家完整掌握Activity用法的目的。下面就让我们一起来学习一下Activity的生命周期吧!
4512
2020-02-04 15:39:14
自学Android编程入门难吗
自学android编程入门难吗?难在于你是否用心,是否坚持,如果你真的克服了困难,那android编程入门对你来说是新的开始。而且Android应用开发已得到众多企业的追捧,发展前景无比诱人。所以小编这里给大家提供了android编程入门自学方案,希望能够对你有帮助。
4743
2020-04-01 17:55:03
新冠肺炎下在线教育的前景是否值得期待?
由于新冠肺炎的严重性,当前许多高校都采取在线教育的方式去授课,在线教育也可称为“远程教育”、“在线学习”。除中国以外,其他国家也采取了同样的方式去进行授课,例如澳大利亚、英国等。由于现代通信技术的日益完善,网络科技也将成为未来行业发展的重中之重。
3795
2020-05-28 15:49:13
2021年11月编程语言排行Python、C、Java
2021年11月编程语言排行Python、C、Java,目前Python到了人尽皆知的火热程度,但据《互联网人才趋势白皮书》显示,即使有大批IT从业人员转型Python开发,人工智能与大数据高速发展带来的大基数人才缺口,Python工程师短期内依然难以补缺。
2723
2021-11-16 13:37:57