Java连接mysql数据库代码实例程序

这里提供的完整攻略将帮助大家编写Java连接mysql数据库的代码实例程序。

步骤一:下载并安装JDBC驱动程序

在使用Java连接mysql数据库之前,我们需要下载并安装mysql JDBC驱动程序。这里我们以mysql-connector-java-8.0.25.jar为例,在这个网页上下载mysql JDBC驱动程序:https://dev.mysql.com/downloads/connector/j/8.0.html

下载完成后,将mysql-connector-java-8.0.25.jar文件引入到项目中的"lib"文件夹下。

步骤二:编写Java代码连接mysql数据库

import java.sql.*;

public class JavaMysqlDemo {
    static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver"; //mysql驱动
    static final String DB_URL = "jdbc:mysql://localhost:3306/test_db?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
    static final String USER = "root"; //mysql用户名
    static final String PASS = "password"; //mysql密码
    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        try {
            Class.forName(JDBC_DRIVER);
            conn = DriverManager.getConnection(DB_URL, USER, PASS);
            System.out.println("连接成功!");

            stmt = conn.createStatement();
            String sql = "SELECT * FROM user_info";
            ResultSet rs = stmt.executeQuery(sql);

            while(rs.next()){
               int id  = rs.getInt("id");
               String name = rs.getString("name");
               String email = rs.getString("email");
               String password = rs.getString("password");
               String country = rs.getString("country");
               System.out.println("ID:"+id+", 姓名:"+name+", Email:"+email+", 密码:"+password+", 国家:"+country);
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch(SQLException se) {
            se.printStackTrace();
        } catch(Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if(stmt!=null) stmt.close();
            } catch(SQLException se2) {
            }
            try {
                if(conn!=null) conn.close();
            } catch(SQLException se) {
                se.printStackTrace();
            }
        }
    }
}

在第6行中,我们定义了mysql驱动的名称,而在第7行定义了要连接的数据库的URL。在第8行和第9行中,我们设置了要连接的mysql用户名和密码。

在代码的第14行,我们尝试通过调用DriverManager类的getConnection()方法来建立与mysql数据库的连接。getConnection()方法接收三个参数,分别是要连接的数据库的URL、用户名和密码。

在代码的第17行,我们创建了一个Statement对象来执行SQL查询。通过调用Statement类的executeQuery()方法来执行SQL查询语句的语句,并将返回结果存储到ResultSet对象中。

在代码的第21-26行,我们使用while循环来遍历ResultSet对象中的每一项。在这里,我们只是简单地输出每个用户的ID、姓名、电子邮件、密码和国家的名称。

在代码的最后一个catch块中,我们关闭了ResultSet对象、Statement对象和Connection对象以及任何从这些对象分配的资源。

步骤三:运行Java程序

编译和运行Java代码的过程与一般的Java程序相同。从命令行中键入“javac JavaMysqlDemo.java”来编译Java代码,再键入“java JavaMysqlDemo”来运行Java代码。

示例:

import java.sql.*;

public class JavaMysqlDemo2 {
    static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver"; //mysql驱动
    static final String DB_URL = "jdbc:mysql://localhost:3306/test_db?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
    static final String USER = "root"; //mysql用户名
    static final String PASS = "password"; //mysql密码
    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        try {
            Class.forName(JDBC_DRIVER);
            conn = DriverManager.getConnection(DB_URL, USER, PASS);
            System.out.println("连接成功!");

            //插入一条新的数据
            stmt = conn.createStatement();
            String sql = "INSERT INTO user_info(id, name, email, password, country) VALUES (5, 'Tom', 'tom@email.com', '123456', 'USA')";
            stmt.executeUpdate(sql);

            //查询所有数据
            sql = "SELECT * FROM user_info";
            ResultSet rs = stmt.executeQuery(sql);

            while(rs.next()){
               int id  = rs.getInt("id");
               String name = rs.getString("name");
               String email = rs.getString("email");
               String password = rs.getString("password");
               String country = rs.getString("country");
               System.out.println("ID:"+id+", 姓名:"+name+", Email:"+email+", 密码:"+password+", 国家:"+country);
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch(SQLException se) {
            se.printStackTrace();
        } catch(Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if(stmt!=null) stmt.close();
            } catch(SQLException se2) {
            }
            try {
                if(conn!=null) conn.close();
            } catch(SQLException se) {
                se.printStackTrace();
            }
        }
    }
}

在这个示例中,我们向之前的用户表中插入了一条新的数据,并输出了所有的数据。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java连接mysql数据库代码实例程序 - Python技术站

(0)
上一篇 2023年6月16日
下一篇 2023年6月16日

相关文章

  • SpringBoot集成JPA持久层框架,简化数据库操作

    以下是详细讲解“SpringBoot集成JPA持久层框架,简化数据库操作”的完整攻略。 1. 引入JPA依赖 在SpringBoot中引入JPA依赖非常简单,只需要在Maven或Gradle的配置文件中添加以下依赖就可以了。 Maven依赖配置 <dependency> <groupId>org.springframework.boo…

    Java 2023年5月20日
    00
  • Java实现批量导入excel表格数据到数据库中的方法

    下面是一份Java实现批量导入excel表格数据到数据库中的方法的攻略: 一、前置要求 数据库的表结构,表中的字段需要与excel表格中的字段一一对应。 Jdbc数据库驱动。 Apache POI库,它是用于读取和写入Microsoft Office二进制文件格式的Java库。 二、实现步骤 解析Excel文件,利用Apache POI库实现,将文件内容读取…

    Java 2023年5月20日
    00
  • mybatis 加载配置文件的方法(两种方式)

    MyBatis 是 Java 持久层框架的一种,能够使使用 JDBC 更加简单化。 MyBatis 需要通过加载配置文件,建立与数据库的连接。下面将讲解两种 MyBatis 加载配置文件的方法。 方法一:使用 SqlSessionFactoryBuilder 加载 SqlSessionFactoryBuilder 是 MyBatis 中用于创建 SqlSes…

    Java 2023年5月20日
    00
  • Mybatis 自动映射(使用需谨慎)

    Mybatis 自动映射 (Auto-mapping) 是指Mybatis在进行 SQL 查询结果和Java对象映射时,自动查找Java对象对应属性名和SQL查询结果列名相同的项,并进行赋值。自动映射虽然能够简化开发工作,但也存在一些需要注意的地方,使用时需谨慎。 自动映射的配置方式 方式一: 自动映射全局开启 Mybatis提供了全局配置自动映射的方式,即…

    Java 2023年5月19日
    00
  • Java中HashMap与String字符串互转的问题解决

    Java中HashMap与String字符串互转的问题解决 在Java开发中,我们经常会使用到HashMap来做键值对的操作。有时候我们需要把HashMap转换成字符串,或者把字符串转换成HashMap。那么,如何进行这样的操作呢?下面是两种方式来解决问题。 使用Java中自带的方法进行转换 Java中提供了很多可以直接转换的方法,我们可以使用这些方法来进行…

    Java 2023年5月27日
    00
  • SpringMVC RESTFul实体类创建及环境搭建

    以下是关于“SpringMVC RESTFul实体类创建及环境搭建”的完整攻略,其中包含两个示例。 SpringMVC RESTFul实体类创建及环境搭建 SpringMVC是一个基于MVC模式的Web框架,它可以帮助我们快速开发Web应用程序。本文将介绍如何创建RESTFul实体类,并搭建环境来支持RESTFul API。 创建实体类 RESTFul AP…

    Java 2023年5月16日
    00
  • Java基本数据类型与对应的包装类(动力节点java学院整理)

    接下来我将为您详细讲解Java基本数据类型与对应的包装类的相关知识,以下是具体的内容和示例: 一、Java基本数据类型 Java基本数据类型共有8种,它们分别是: 名称 关键字 占用内存 取值范围 整型 byte 1字节 [-128, 127] short 2字节 [-32768, 32767] int 4字节 [-2147483648, 214748364…

    Java 2023年5月27日
    00
  • 一文详解Java对象的序列化和反序列化

    一文详解Java对象的序列化和反序列化 什么是序列化和反序列化? 在Java程序中,对象是指在内存中被创建出来的实例。在Java中,对象可以被序列化成一个二进制数据流。序列化是将Java对象转换成二进制格式的数据,反序列化则是将二进制数据流转回Java对象的过程。 序列化的作用和使用场景 序列化的作用主要有两点:1. 可以方便地将对象在网络中传输。2. 可以…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部