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();//耗资源,用完关掉
相关推荐
L·S·P3 小时前
25MB 管理 100+ 种数据库:开源轻量客户端 DBX 介绍与上手
数据库·mysql·开源·database·dbx
笃行3505 小时前
KingbaseES KSQL Developer 的连接管理、数据处理与对象管理
数据库
ha_lydms5 小时前
MaxCompute中加密与解密函数
大数据·数据库·数据仓库·hadoop·dataworks·maxcompute·odps
EatFan5 小时前
Spring Boot 4 落地观察:从 yudao-cloud、matecloud、JPower 看国产脚手架的升级路线与迁移清单
java·spring boot·后端·spring cloud·微服务·后端开发·jdk 21
Shadow(⊙o⊙)6 小时前
MySQL内置函数
数据库·mysql
Maiko Star6 小时前
* LangChain 提示词模板详解:ChatPromptTemplate 的使用与高级特性
java·人工智能·langchain
笃行3506 小时前
金仓 KingbaseES PL/SQL 开发全攻略:异常处理、数据类型、调试优化与过程语句
数据库
夜雪一千6 小时前
MySQL 常用 DEFAULT 默认值一览表
mysql
快乐的木子李7 小时前
mysql-26.7.0-linux26.7.0下载安装
数据库·mysql
现任明教教主~8 小时前
Thinkphp站群蜘蛛池SaaS系统YanyvSEO含多用户/积分/六大引擎计费/易支付对接
java·开发语言·spring