Java构建JDBC应用程序的实例操作
作者:小妮浅浅 时间:2023-08-07 12:09:13
我们在学习接口的时候。能够在里面做一些方法的调用。不过今天所要讲的JDBC,虽然也是连接数据库的一种接口,不过与类接口有着很大的区别,大家要注意区分。下面我们就构建JDBC的步骤进行了整理,还不会此类操作的小伙伴,一起来看看具体的内容吧。
1、加载数据库驱动。 通常使用 Class 类的 forName()静态方法来加载驱动。 例如如下代码:
// 加载驱动
Class.forName(driverClass)
2、通过 DriverManager 获取数据库连接。 DriverManager 提供了如下方法:
// 获取数据库连接
DriverManager.getConnection(String url,String user,String password);
3、通过 Connection 对象创建 Statement 对象。 Connection 创建Statement 的方法有如下三个:
createStatement(): 创建基本的 Statement 对象。
prepareStatement(String sql): 根据传入的 SQL 语句创建预编译的 Statement 对象。
prepareCall(String sql): 根据传入的 SQL 语句创建 CallableStatement 对象。
4、使用 Statement 执行 SQL 语句。所有的 Statement 都有如下三个方法来执行 SQL 语句:
execute(): 可以执行任何 SQL 语句, 但比较麻烦。
executeUpdate(): 主要用于执行 DML 和 DDL 语句。 执行 DML 语句返回受 SQL 语句影响的行数, 执行 DDL 语句返回 0。
executeQuery(): 只能执行查询语句, 执行后返回代表查询结果的 ResultSet 对象。
5、操作结果集。如果执行的SQL语句是查询语句,则执行结果将返回一个ResultSet对象,该对象里保存了SQL语句查询的结果。可以通过操作该对象取得查询结果。
6、回收数据库资源,包括关闭 ResultSet、 Statement 和 Connection 等资源。
基础知识点扩展:
什么是JDBC
JDBC全称Java Database Connectivity
JDBC可以通过载入不同的数据库的“驱动程序”而与不同的数据库进行连接。
JDBC的优点
使用的驱动不同,即可连接不同的数据库。
使用同一套操作来操作不同的数据库
如果每一个数据库java都制订一套连接方式,那么当不同的数据库更新的时候,java也需要更新自己的代码,而使用jdbc,使用同一套代码来操作,使用不同的驱动程序(驱动程序由数据库厂商提供)来连接,这使得可以连接不同的数据库。
来源:https://www.py.cn/java/jiaocheng/27148.html
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
C#实现简单俄罗斯方块
![](https://img.aspxhome.com/file/2023/5/66575_0s.jpg)
C++实现leetcode(3.最长无重复字符的子串)
Java实现TCP/IP协议的收发数据(服务端)代码实例
![](https://img.aspxhome.com/file/2023/3/58063_0s.jpg)
微信第三方登录Android实现代码
![](https://img.aspxhome.com/file/2023/6/85986_0s.png)
OpenCV实现直线拟合
![](https://img.aspxhome.com/file/2023/4/92494_0s.jpg)
Java继承Thread类创建线程类示例
spring mvc 实现获取后端传递的值操作示例
安卓逆向半次元app逆向分析源码
![](https://img.aspxhome.com/file/2023/5/84725_0s.png)
Flutter Widgets MediaQuery控件屏幕信息适配
![](https://img.aspxhome.com/file/2023/2/120092_0s.jpg)
Mybatis plus多租户方案的实战踩坑记录
![](https://img.aspxhome.com/file/2023/6/57956_0s.jpg)
对Jpa中Entity关系映射中mappedBy的全面理解
C语言文件操作函数大全(超详细)
SpringBoot整合freemarker实现代码生成器
![](https://img.aspxhome.com/file/2023/5/57505_0s.jpg)
Qt之调用C#的动态库的解决方法
![](https://img.aspxhome.com/file/2023/1/67061_0s.png)
Visual Studio 2022 安装低版本 .Net Framework的图文教程
![](https://img.aspxhome.com/file/2023/0/78990_0s.png)
Mybatis-plus多数据源配置的两种方式总结
![](https://img.aspxhome.com/file/2023/3/57613_0s.png)
Android 5秒学会使用手势解锁功能
![](https://img.aspxhome.com/file/2023/1/83511_0s.gif)
elasticsearch分布式及数据的功能源码分析
![](https://img.aspxhome.com/file/2023/7/58087_0s.png)
谈谈为JAXB和response设置编码,解决wechat4j中文乱码的问题
![](https://img.aspxhome.com/file/2023/1/57621_0s.png)