idea实现Java连接MySQL数据库

1.下载MySQL并安装

首先如果没有mysql的需要先下载MySQL,可以看这个教程:

Mysql超详细安装配置教程(保姆级)_mysql安装及配置超详细教程-CSDN博客

2.下载mysql 的jdbc驱动

官网:MySQL :: Download Connector/J

解压并将驱动jar包导入idea ,

在Java项目中创建一个bin文件夹,然后把jar包Ctrl+C,V到bin文件夹

然后lib右键,点击Add as Library

3.编写第一个jdbc程序

案例代码

java 复制代码
package com.bing.lesson01;

import java.sql.*;

/**
 * @version: java version 1.8
 * @Author: BING
 * @description:
 * @date: 2023-12-31 10:32
 */
//我的第一个jdbc程序
public class JdbcFirstDemo {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //1.加载驱动
        Class.forName("com.mysql.jdbc.Driver");//固定写法,加载驱动
        //2.用户信息和url
        String url = "jdbc:mysql://localhost:3306/school?useUnicode=true&charcterEncoding=utf8&useSSL=true";
        String username = "root";
        String password = "123456";

        //3.连接成功,数据库对象
        Connection connection = DriverManager.getConnection(url,username,password);

        //4.执行SQL
        Statement statement = connection.createStatement();

        //5.执行SQL的对象去执行SQL,可能存在结果,查看返回结果
        String sql = "SELECT * FROM student1";

        //6.释放连接
        ResultSet resultSet = statement.executeQuery(sql);//返回的结果集,结果集中封装了我们全部查询出来的结果

        while (resultSet.next()){
            System.out.println("id=" + resultSet.getObject("id"));
            System.out.println("name=" + resultSet.getObject("name"));
            System.out.println("age1=" + resultSet.getObject("age1"));
            System.out.println("birthday=" + resultSet.getObject("birthday"));
            System.out.println("======================================");
        }

        resultSet.close();
        statement.close();
        connection.close();
    }
}

显示运行结果, 成功!

步骤总结:

1.加载驱动

2.连接数据库 DriverManager

3.获得执行sql的对象 Statement

4.获得返回的结果集

5.释放连接

4.JDBC中对象解释

1.DriverManager

java 复制代码
//DriverManager.registerDriver(new com.mysql.jdbc.Driver());
Class.forName("com.mysql.jdbc.Driver");//固定写法,加载驱动
Connection connection = DriverManager.getConnection(url,username,password);

// connection 代表数据库
// 数据库设置自动
// 提交事务
// 事务滚回

connection.rollback();
connection.commit();
connection.setAutoCommit();

2.URL

java 复制代码
String url = "jdbc:mysql://localhost:3306/school?useUnicode=true&charcterEncoding=utf8&useSSL=true";

// mysq1 -- 3306
// 协议 ://主机地址:端口号/数据库名?参数1&参数2&参数3
// oralce -- 1521
//jdbc:oracle:thin:@localhost:1521:sid

3.Statement

Statement 执行SQL的对象 PrepareStatement执行SQL的对象

java 复制代码
String sql = "SELECT * FROM student1";

statement.executeQuery(); //查询操作返回 Resultset
statement.execute(); // 执行任何SQL
statement.executeUpdate(); // 更新、插入、删除。都是用这个,返回一个受影响的行数

4.ResultSet

ResultSet 查询的结果集,结果集中封装了我们全部查询出来的结果。

获取指定的数据类型:

java 复制代码
resultSet.getObject(); // 在不知道列类型的情况下使用
// 如果知道列的类型就使用指定的类型
resultSet.getString();
resultSet.getInt();
resultSet.getFloat();
resultSet.getDate() ;
resultSet.getObject();
...

遍历、指针

java 复制代码
resultSet.beforeFirst(); // 移动到最前面
resultSet.afterLast();// 移动到最后面
resultSet.next(); //移动到下一个数据
resultSet.previous(); //移动到前一行
resultSet.absolute(row); //移动到指定行

5.释放资源

java 复制代码
resultSet.close();
statement.close();
connection.close();//耗资源,用完关掉
相关推荐
轻刀快马几秒前
跨越软硬件的共鸣(二):从 Cache 写策略看 Redis 与 DB 的一致性博弈
java·开发语言·redis·计算机组成原理
折哥的程序人生 · 物流技术专研1 分钟前
Java 23 种设计模式:从踩坑到精通 | 装饰器模式 —— 比继承更灵活的扩展方式,你用过吗?
java·装饰器模式·java面试·结构型模式·java设计模式·javaio·从踩坑到精通
lili00129 分钟前
2026 企业 AI 选型新范式:OpenRouter Fusion 证明多模型融合性价比远超单模型,企业该如何重构技术栈? - 微元算力(weytoken)
java·人工智能·python·重构·ai编程
Keano Reurink10 分钟前
搜索API与GSC数据对比:发现数据盲区
数据库·python·数据挖掘
shushangyun_11 分钟前
汽车服务行业B2B平台+AI解决方案哪家专业:2026年最新测评
java·运维·网络·数据库·人工智能·汽车
A.说学逗唱的Coke14 分钟前
【大模型专题】Spring AI Alibaba × Skill 整合实战:让 AI 真正“会干活
java·人工智能·spring
大黄说说26 分钟前
深入理解 Go 协程 Goroutine:并发编程的核心精髓
java·数据库·python
sulikey39 分钟前
数据库系统概论4 - 更新与视图 期末速成课笔记
数据库·笔记·考试·期末速成·数据库系统概论
锋行天下39 分钟前
数据库安全并发控制详解:乐观锁 vs 悲观锁 vs 原子操作
前端·数据库·后端
许彰午1 小时前
38_Java设计模式之装饰器模式
java·设计模式·装饰器模式