当前位置:网站首页>【JDBC】快速入门教程
【JDBC】快速入门教程
2022-07-06 07:05:00 【漩涡编程,一鸣惊人】
1.什么是JDBC?
JDBC API是一个Java API,可以访问任何类型表列数据,特别是存储在关系数据库中的数据。JDBC代表Java数据库连接。
JDBC库中所包含的API通常与数据库使用于:
- 连接到数据库
- 创建SQL或MySQL语句
- 在数据库中执行SQL或MySQL查询
- 查看和修改数据库中的数据记录
2.JDBC环境配置
- JAVA(JDK)安装
- 数据库系统的安装(如MySQL,SQL Server的安装)
3.创建JDBC应用程序
建立一个JDBC应用程序,本教程以java连接SQL Server为例,分六个步骤进行:
1.导入包
在程序中包含数据库编程所需的JDBC类。大多数情况下,使用 import java.sql.*
就足够了
2.注册JDBC驱动程序
初始化驱动程序,打开与数据库的通信。
Class.forName("com.mysql.cj.jdbc.Driver");
3.打开链接
使用DriverManager.getConnection()
方法来创建一个Connection
对象,
String user="sa";
String pwd="123456";
System.out.println("连接数据库中...");
Connection con=DriverManager.getConnection(url,user,pwd);
4.执行一个查询
使用一个Statement
类型或PreparedStatement
的对象,并提交一个SQL语句到数据库执行查询:
System.out.println("创建statement...");
Statement sm=con.createStatement();
String sql="SELECT * FROM Students";
ResultSet rs=sm.executeQuery(sql);
如果要执行一个SQL语句:UPDATE,INSERT,DELETE语句,如下:
sm=con.createStatement();
String sql="DELETE FROM Students";
ResultSet rs=sm.executeUpdate(sql);
5. 从结果集中提取数据
这一步中演示如何从数据库中获取查询结果的数据。可以使用适当的ResultSet.getXXX()
方法来检索的数据结果如下:
//STEP 5: Extract data from result set
while(rs.next()){
//Retrieve by column name
int id = rs.getInt("id");
int age = rs.getInt("age");
String first = rs.getString("first");
String last = rs.getString("last");
//Display values
System.out.print("ID: " + id);
System.out.print(", Age: " + age);
System.out.print(", First: " + first);
System.out.println(", Last: " + last);
}
6. 清理环境资源
在使用JDBC与数据交互操作数据库中的数据后,应该明确地关闭所有的数据库资源以减少资源的浪费,对依赖于JVM的垃圾收集如下:
//STEP 6: Clean-up environment
rs.close();
stmt.close();
con.close();
点点关注点点赞支持一下博主吧~
边栏推荐
猜你喜欢
[server data recovery] case of offline data recovery of two hard disks of IBM server RAID5
微信公众号无限回调授权系统源码 全网首发
OpenGL ES 学习初识(1)
Hydra common commands
树莓派串口登录与SSH登录方法
Upgraded wechat tool applet source code for mobile phone detection - supports a variety of main traffic modes
leetcode1020. 飞地的数量(中等)
Attributeerror: can 't get attribute' sppf 'on < module' models. Common 'from' / home / yolov5 / Models / comm
Map of mL: Based on the adult census income two classification prediction data set (whether the predicted annual income exceeds 50K), use the map value to realize the interpretable case of xgboost mod
Leetcode - 152 product maximum subarray
随机推荐
Interface automation test framework: pytest+allure+excel
C语言_双创建、前插,尾插,遍历,删除
顶测分享:想转行,这些问题一定要考虑清楚!
18. Multi level page table and fast table
SSO process analysis
【服务器数据恢复】IBM服务器raid5两块硬盘离线数据恢复案例
Apache dolphin scheduler source code analysis (super detailed)
BUU的MISC(不定时更新)
微信公众号无限回调授权系统源码 全网首发
【每日一题】729. 我的日程安排表 I
基于PyTorch和Fast RCNN快速实现目标识别
Librosa audio processing tutorial
When my colleague went to the bathroom, I helped my product sister easily complete the BI data product and got a milk tea reward
leetcode841. 钥匙和房间(中等)
Bitcoinwin (BCW): 借贷平台Celsius隐瞒亏损3.5万枚ETH 或资不抵债
Prefix and array series
Leetcode daily question (1870. minimum speed to arrive on time)
leetcode841. Keys and rooms (medium)
leetcode704. 二分查找(查找某个元素,简单,不同写法)
Uncaught TypeError: Cannot red propertites of undefined(reading ‘beforeEach‘)解决方案