MySQL实现JDBC详细步骤

 更新时间:2022年02月19日 11:10:50   作者:不考上研不改名TL  
JDBC 是 Java 访问数据库的标准规范,真正怎么操作数据库还需要具体的实现类,也就是数据库驱动,本文给大家介绍MySQL实现JDBC详细讲解,感兴趣的朋友一起看看吧

JDBC基础入门

概念

JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系型数据库提供统一访问,它是由一组用Java语言编写的类和接口组成的。

  JDBC 规范定义接口,具体的实现由各大数据库厂商来实现。

JDBC 是 Java 访问数据库的标准规范,真正怎么操作数据库还需要具体的实现类,也就是数据库驱动。每个数据库厂商根据自家数据库的通信格式编写好自己数据库的驱动。所以我们只需要会调用 JDBC 接口中的方法即可,数据库驱动由数据库厂商提供。

本质

其实就是java官方提供的一套规范(接口)。用于帮助开发人员快速实现不同关系型数据库的连接!

JDBC的7个步骤

(1)导入jar包

(2)注册驱动

Class.forName("com.mysql.cj.jdbc.Driver");

注意:如果使用较高版本的MySQL,必须使用 com.mysql.cj.jdbc.Driver 的方式,否则会报错!

Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

如果是低版本的可以使用 com.mysql.jdbc.Driver

如果还是报错,可以使用在url上面加入时区!

url=jdbc:mysql://localhost:3306/数据库名?serverTimezone=UTC

(3)获取连接

String url = "jdbc:mysql://localhost:3306/db1";
Connection con = DriverManager.getConnection(url,"root","888888");

(4)获取执行者对象

Statement stat = con.createStatement();

(5)执行sql语句,并接收返回结果

String sql = "SELECT * FROM user";
ResultSet rs = stat.executeQuery(sql);

(6)处理结果

while(rs.next()) {
    System.out.println( rs.getInt("id")
                + "\t" + rs.getString("name"));
}

(7)释放资源

con.close();
stat.close();
rs.close();

JDBC入门示例代码

Connection对象中的用户名,数据库名,密码改成你自己的哦!

public class jdbc_demo01 {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        // 1.导入jar包
        // 2.注册驱动
        Class.forName("com.mysql.cj.jdbc.Driver");
 
        // 3.获取连接
        String url = "jdbc:mysql://localhost:3306/db1";
        Connection con = DriverManager.getConnection(url,"root","888888");
        // 4.获取执行者对象
        Statement stat = con.createStatement();
        // 5.执行sql语句,并且接收结果
        String sql = "SELECT * FROM product";
        ResultSet rs = stat.executeQuery(sql);
        // 6.处理结果
        while(rs.next()) {
            System.out.println( rs.getInt("id") + "\t"
                    + rs.getString("name") + "\t"
                    + rs.getInt("price") + "\t"
                    + rs.getString("brand") + "\t"
                    + rs.getInt("stock")
            );
        }
        // 7。释放资源
        con.close();
        stat.close();
        rs.close();
    }
}

结果如下: 

到此这篇关于MySQL实现JDBC详细讲解的文章就介绍到这了,更多相关mysql JDBC内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • CentOS8下MySQL 8.0安装部署的方法

    CentOS8下MySQL 8.0安装部署的方法

    这篇文章主要介绍了CentOS 8下 MySQL 8.0 安装部署的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • MySQL 如何查询当前最新事务ID

    MySQL 如何查询当前最新事务ID

    这篇文章主要介绍了MySQL 如何查询当前最新事务ID,帮助大家更好的理解和学习MySQL,感兴趣的朋友可以了解下
    2020-08-08
  • MySQL数据库INNODB表损坏修复处理过程分享

    MySQL数据库INNODB表损坏修复处理过程分享

    突然收到MySQL报警,从库的数据库挂了,一直在不停的重启,打开错误日志,发现有张表坏了。innodb表损坏不能通过repair table 等修复myisam的命令操作。现在记录下解决过程
    2013-08-08
  • 深度解析MySQL 5.7之中文全文检索

    深度解析MySQL 5.7之中文全文检索

    InnoDB默认的全文索引parser非常合适于Latin,因为Latin是通过空格来分词的。但对于像中文,日文和韩文来说,没有这样的分隔符。一个词可以由多个字来组成,所以我们需要用不同的方式来处理。在MySQL 5.7.6中我们能使用一个新的全文索引插件来处理它们:n-gram parser。
    2016-12-12
  • 修改MySQL所有表的编码或修改某个字段的编码步骤详解

    修改MySQL所有表的编码或修改某个字段的编码步骤详解

    这篇文章主要给大家介绍了关于修改MySQL所有表的编码或修改某个字段编码的相关资料,在进行数据库编码更改之前,需要先确定目标编码格式,常见的编码格式有UTF-8、GBK等,需要的朋友可以参考下
    2023-12-12
  • MySql 字符串中提取数字的实现示例

    MySql 字符串中提取数字的实现示例

    在MySQL中,有时需要从字符串中提取数字,本文就来介绍一下MySql 字符串中提取数字的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • MySQL数据库误操作后快速回滚的方法

    MySQL数据库误操作后快速回滚的方法

    这篇文章主要介绍了MySQL数据库误操作后快速回滚的方法的相关资料,需要的朋友可以参考下
    2016-12-12
  • MySQL中如何正确存储IP地址

    MySQL中如何正确存储IP地址

    在MySQL中,当存储IPv4地址时,应该使用32位的无符号整数(UNSIGNED INT)来存储IP地址,而不是使用字符串,下面就来详细的介绍一下具体原因,感兴趣的可以了解一下
    2023-05-05
  • 浅析Mysql Join语法以及性能优化

    浅析Mysql Join语法以及性能优化

    在讲MySQL的Join语法前还是先回顾一下联结的语法,呵呵,其实连我自己都忘得差不多了,那就大家一起温习吧,这里我有个比较简便的记忆方法,内外联结的区别是内联结将去除所有不符合条件的记录,而外联结则保留其中部分。外左联结与外右联结的区别在于如果用A左联结B则A中所有记录都会保留在结果中,此时B中只有符合联结条件的记录,而右联结相反,这样也就不会混淆了。
    2014-05-05
  • Mybatis特殊字符处理的详解

    Mybatis特殊字符处理的详解

    这篇文章主要介绍了Mybatis特殊字符处理的详解的相关资料,需要的朋友可以参考下
    2017-07-07

最新评论