jdbc
jdbc介绍
JDBC全称为: Java DataBase Connectivity(java与数据库结合)
如果没有JDBC,Java程序员需要面向各个数据库驱动接口编程 开发复杂
sun公司提供一套统一JDBC接口规范 Java程序只需要使用JDBC就可以操作任何数据库 JDBC实现由各个数据库厂商提供
常用类说明
1 DriverManager
操作数据库第一步是需要注册驱动的
DriverManager类的目的: 注册驱动和获取链接的 获取一个链接collection
Class.froName("com.mysql.jdbc.Driver");
需要导入包
2 JDBC URL说明
告诉程序你要操作哪一个数据库
mysql为例: 需要获取链接数据库的相关协议:jdbc:mysql://localhost:3306/库名
这里 jdbc: 是JDBC链接协议
这里 mysql:// 是mysql数据库连接协议 JDBC子协议
localhost:3306 主机和端口号
Collection 连接
Statement con.createStatement()
PreparedStatement con.preparedStatement(sql)-- 执行对象
该对象可以将SQL发送给数据库进行执行
Statement
用于将SQL发送给数据库 获得操作结果
发送单条SQL
executeUpdate() 用于向数据库发送 intsert update delete 语句 返回int类型参数 代表影响记录行数
executeQuery() 用于向数据库发送 select语句 返回ResultSet 结果集对象 -- 类似于一张表
execute 用于数据库发送任何SQL语句
返回Boolean SQL执行结果是ResultSet 返回true 否则false
ResultSet
ResultSet包含符合SQL语句中推荐的所有行 并且太通过一套get方法( 这些get方法可以访问当前行中的不同列) 提供了对这些数据的访问。ResultSet ...next 方法用于移动到ResultSet 中的下一行 ⑩下一行成为当前行
结果集一般是一个表 其中有查询所返回的列标题及对应的值
行:
ResultSet 维护指向其中数据行的光标 梅调用一次next方法 光标向下移动一行
最初它位于第一行之前 因此第一次调用next将把光标置于第一行上 使它成为当前行 随着每次调用next 导致光标向下移动一行 按照自上而下的次序获取ResultSet行
列:
方法getxxx 提供了获取当前行中的某列值的途径 在每一行内 可以按任何次序获取列值 但为了保证可移植性 应该从左至右获取列值
结果集处理
1 数据结果集只有一条记录一般采用
if(rs.next){
//查到了数据
}else{
//没有查到数据
}
如果是多条记录采用循环遍历
while(rs.next){
//根据数据库内部 列类型 选择相应的getxxx方法
int-------getInt()
varchar ------getString()
date ---------getDate()
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!