JDBC(Java Database Connectivity)是Java语言中用于与关系型数据库进行交互的一种标准API(Application Programming Interface)。它提供了一组接口和类,使Java应用程序能够通过统一的方式连接、查询和操作各种关系型数据库。
JDBC允许开发者使用Java编程语言来执行以下数据库操作:
-
连接数据库:通过JDBC,可以建立与数据库的连接,使用数据库的驱动程序进行通信。
-
执行SQL语句:使用JDBC,可以执行各种SQL语句(如查询、插入、更新、删除等),并将结果返回给Java应用程序。
-
处理事务:JDBC支持事务管理,可以使用事务来确保一组数据库操作的原子性和一致性。
-
处理数据库元数据:通过JDBC,可以获取数据库的元数据信息,如表结构、索引、约束等。
-
处理数据库异常:JDBC提供了异常处理机制,可以捕获和处理与数据库交互过程中发生的异常情况。
连接数据库
-
下载MySQL的JDBC驱动程序。mysql-connector-j-8.0.33.jar
- 导入驱动
-
在Java代码中使用JDBC API连接到MySQL数据库。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | package org.myJDBC; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; import java.sql.ResultSet; public class Test { public static void main(String[] args) { // MySQL数据库连接信息 String url = "jdbc:mysql://localhost:3306/tests" ; String username = "root" ; String password = "123456" ; try { // 加载MySQL驱动程序 Class.forName( "com.mysql.cj.jdbc.Driver" ); // 建立数据库连接 Connection connection = DriverManager.getConnection(url, username, password); System. out .println( "成功连接到MySQL数据库" ); //创建sql发送器 Statement sta = connection.createStatement(); // 在此执行数据库操作 // 增加数据 String insertSql = "INSERT INTO `123` (id, name) VALUES (1, 'John')" ; sta.executeUpdate(insertSql); System. out .println( "插入数据成功" ); // 删除数据 String deleteSql = "DELETE FROM `123` WHERE id = 1" ; sta.executeUpdate(deleteSql); System. out .println( "删除数据成功" ); // 更新数据 String updateSql = "UPDATE `123` SET name = 'Alice' WHERE id = 2" ; sta.executeUpdate(updateSql); System. out .println( "更新数据成功" ); //查 // sta.executeQuery("select * from ‘123’"); String selectSql = "SELECT * FROM `123`" ; ResultSet resultSet = sta.executeQuery(selectSql); while (resultSet.next()) { int id = resultSet.getInt( "id" ); String name = resultSet.getString( "name" ); System. out .println( "ID: " + id + ", Name: " + name); } System. out .println( "查询成功" ); // 关闭数据库连接 connection.close(); System. out .println( "已关闭数据库连接" ); } catch (ClassNotFoundException e) { System. out .println( "找不到MySQL驱动程序" ); e.printStackTrace(); } catch (SQLException e) { System. out .println( "数据库连接失败" ); e.printStackTrace(); } } private static void selectData(Connection connection) { } } |
增删改查
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!