【Java】如何使用jdbc连接并操作MySQL,一文读

【Java】如何使用JDBC连接并操作MySQL,一文读懂!🚀

JDBC(JavaDatabaseConnectivity)是Java语言中用来规范客户端程序如何访问数据库的API,今天我们就来学习如何使用JDBC连接并操作MySQL数据库!💡

1.准备工作🛠️

首先,确保你已经:
-安装好MySQL数据库
-下载了MySQL的JDBC驱动(mysql-connector-java.jar)
-创建好要操作的数据库和表

2.连接MySQL数据库🔌

```java
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.SQLException;

publicclassJdbcDemo{
publicstaticvoidmain(String[]args){
//数据库连接信息
Stringurl="jdbc:mysql://localhost:3306/你的数据库名";
Stringusername="你的用户名";
Stringpassword="你的密码";

try{
//1.加载驱动
Class.forName("com.mysql.cj.jdbc.Driver");

//2.获取连接
Connectionconn=DriverManager.getConnection(url,username,password);
System.out.println("数据库连接成功!🎉");

//3.记得关闭连接
conn.close();
}catch(ClassNotFoundException|SQLExceptione){
e.printStackTrace();
}
}
}
```

3.执行SQL操作📝

查询数据🔍
```java
Statementstmt=conn.createStatement();
ResultSetrs=stmt.executeQuery("SELECTFROMusers");

while(rs.next()){
System.out.println("ID:"+rs.getInt("id")+
",姓名:"+rs.getString("name"));
}
rs.close();
stmt.close();
```

插入数据➕
```java
Stringsql="INSERTINTOusers(name,age)VALUES(?,?)";
PreparedStatementpstmt=conn.prepareStatement(sql);
pstmt.setString(1,"张三");
pstmt.setInt(2,25);
introws=pstmt.executeUpdate();
System.out.println("插入了"+rows+"行数据!👍");
pstmt.close();
```

更新数据🔄
```java
Stringsql="UPDATEusersSETage=?WHEREname=?";
PreparedStatementpstmt=conn.prepareStatement(sql);
pstmt.setInt(1,30);
pstmt.setString(2,"张三");
pstmt.executeUpdate();
pstmt.close();
```

4.异常处理与资源释放⚠️

记得使用try-with-resources自动关闭资源:
```java
try(Connectionconn=DriverManager.getConnection(url,username,password);
Statementstmt=conn.createStatement()){
//执行SQL操作
}catch(SQLExceptione){
e.printStackTrace();
}
```

总结📚

通过JDBC连接MySQL只需简单几步:
1.加载驱动
2.获取连接
3.执行SQL
4.处理结果
5.关闭连接

掌握了这些基础操作,你就可以在Java中轻松操作MySQL数据库啦!💪记得在实际开发中使用连接池(如HikariCP)来提高性能哦!✨

相关推荐
cg332 小时前
cc-connect,十分钟帮你把 claude code 连接到微信,飞书,钉钉等等平台
后端·openai
用户1427868669322 小时前
Java多态的底层真相:JVM到底怎么知道该调哪个方法?(面试高频)
后端
初次攀爬者2 小时前
RabbitMQ的消息模式和高级特性
后端·消息队列·rabbitmq
摸鱼的春哥2 小时前
惊!黑客靠AI把墨西哥政府打穿了,海量数据被黑
前端·javascript·后端
考虑考虑2 小时前
JDK25模块导入声明
java·后端·java ee
_小马快跑_3 小时前
Java 的 8 大基本数据类型:为何是不可或缺的设计?
java
想用offer打牌4 小时前
高并发下如何保证接口的幂等性
后端·面试·状态机
爱勇宝5 小时前
2026一人公司生存指南:用AI大模型,90天跑出你的第一条现金流
前端·后端·架构
golang学习记5 小时前
Go 并发编程:原子操作(Atomics)完全指南
后端
哈里谢顿6 小时前
`127.0.0.1` 和 `0.0.0.0` 有何区别?通过验证 demo来展示
后端