初识JDBC

JDBC

1.JDBC是什么?

JDBC(Java database connectivity)Java连接数据库技术,是Sun公司提供了一套API(Application Programming Interface应用程序编程接口),它为Java应用程序提供了一系列的类,使其能够快速高效地访问数据库

2 JDBC的本质是什么?

复制代码
官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口
各个数据库厂商去实现这套接口,提供数据库驱动jar包
我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类

3 为什么要使用JDBC?

JDBC的好处:

复制代码
各数据库厂商使用相同的接口,Java代码不需要针对不同数据库分别开发
可随时替换底层数据库,访问数据库的Java代码基本不变

以后编写操作数据库的代码只需要面向JDBC(接口),操作哪儿个关系型数据库就需要导入该数据库的驱动包,如需要操作MySQL数据库,就需要再项目中导入MySQL数据库的驱动包。

4 JDBC编程步骤

复制代码
第一步:注册驱动(作用:告诉Java程序,即将要连接的是哪个品牌的数据库)
第二步:获取连接(表示JVM的进程和数据库进程之间的通道打开了,这属于进程之间的通信,重量级的,使用完之后一定要关闭通道。)
第三步:获取数据库操作对象(专门执行sql语句的对象)
第四步:执行SQL语句(DQL DML...)
第五步:处理查询结果集(只有当第四步执行的是select语句的时候,才有这第五步处理查询结果集。)
第六步:释放资源(使用完资源之后一定要关闭资源。Java和数据库属于进程之间的通信,开启之后一定要关闭。)

Statement与PreparedStatement区别

Statement由方法createStatement()创建,该对象用于发送简单的SQL语句

PreparedStatement由方法prepareStatement()创建,该对象用于发送带有一个或者多个输入参数的SQL语句

SQL语句使用"?"作为数据占位符

使用setXxx()方法设置数据

PreparedStatement---预编译

效率、性能、开销

安全性

代码可读性

相关推荐
我没想到原来他们都是一堆坏人8 小时前
(未完待续...)如何编写一个用于构建python web项目镜像的dockerfile文件
java·前端·python
沙二原住民9 小时前
提升数据库性能的秘密武器:深入解析慢查询、连接池与Druid监控
java·数据库·oracle
三毛20049 小时前
玳瑁的嵌入式日记D33-0908(SQL数据库)
jvm·数据库·sql
叫我龙翔9 小时前
【MySQL】从零开始了解数据库开发 --- 库的操作
数据库·mysql·数据库开发
Jerry&Grj9 小时前
SpringBoot埋点功能技术实现方案深度解析:架构设计、性能优化与扩展性实践
java·微服务·性能优化·springboot·架构设计·埋点技术
没有bug.的程序员9 小时前
Redis Stream:轻量级消息队列深度解析
java·数据库·chrome·redis·消息队列
用户8160791833339 小时前
告别“魔法”:包你解决 Gradle 的下载慢问题
java
GottdesKrieges9 小时前
OceanBase容量统计:租户、数据库、表大小
数据库·oceanbase
pan30350747910 小时前
mysql 回表查询(二次查询,如何检查,如何规避)
数据库·mysql
Michaelwubo10 小时前
elasticsearch-7.17.29 集群案例,k8s方式和原始方式
数据库