zoukankan      html  css  js  c++  java
  • MySQL8.0数据库连接问题

    Java连接MySQL8.0以上版本数据库方式:

    1、com.mysql.jdbc.Driver 更换为 com.mysql.cj.jdbc.Driver

    2、MySQL 8.0 以上版本不需要建立 SSL 连接的,需要显式关闭。

    jdbc:mysql://localhost:3306/数据库名?useSSL=false&serverTimezone=UTC

    3、 8.0版本的mysql数据的连接 与 5.0的有所不同,下面直接贴出 8.0版本应该有的 jdbc驱动连接,还有 mysql 的jdbc jar包要8.0以上的

    <!-- mysql驱动包依赖 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.11</version>
        </dependency>

    配置文件:

    jdbc.driver=com.mysql.cj.jdbc.Driver
    jdbc.url=localhost:3306/数据库名?useSSL=false&serverTimezone=UTC
    jdbc.username=root
    jdbc.password=root

    4.测试连接是否成功:

    package util;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    public class Test {
        @SuppressWarnings("unused")
        private static Test JDBCUtlTool;
    
        public static Connection getConnection() {
            String driver = "com.mysql.cj.jdbc.Driver"; // 获取mysql数据库的驱动类
            String url = "jdbc:mysql://localhost:3306/zhcs?useSSL=false&serverTimezone=UTC&characterEncoding=UTF-8"; // 连接数据库(zhcs是数据库名)
            //String url="jdbc:mysql://localhost:3306/zhcs?useSSL=true&serverTimezone=GMT&characterEncoding=UTF-8";
        
            String name = "root";// 连接mysql的用户名
            String pwd = "123456";// 连接mysql的密码
            try {
                Class.forName(driver);
                Connection conn = DriverManager.getConnection(url, name, pwd);// 获取连接对象
                return conn;
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
                return null;
            } catch (SQLException e) {
                e.printStackTrace();
                return null;
            }
        }
    
        public static void closeAll(Connection conn, PreparedStatement ps, ResultSet rs) {
            try {
                if (rs != null) {
                    rs.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                if (ps != null) {
                    ps.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                if (conn != null) {
                    conn.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    
        public static void main(String[] args) throws SQLException {
            Connection cc = getConnection();
            if (!cc.isClosed())
                System.out.println("Succeeded connecting to the Database!");
            Statement statement = cc.createStatement();
            String sql = "select * from  t_r_webfun";
            ResultSet rs = statement.executeQuery(sql);
            while (rs.next()) {
                System.out.println(rs.getString("F_ID") + "");
            }
        }
    }
  • 相关阅读:
    收集一些dos网络配置命令,从新获取ip刷新dns
    多个线程访问共享对象和数据的方式
    Oracle rownum 分页, 排序
    ORACLE中用rownum分页并排序的SQL语句
    CentOS 6.5安装MongoDB 2.6(多yum数据源)
    【编程练习】收集的一些c++代码片,算法排序,读文件,写日志,快速求积分等等
    java枚举使用详解
    PHP+MySQL动态网站开发从入门到精通(视频教学版)
    Premiere Pro CS6标准教程
    黑客攻防:实战加密与解密
  • 原文地址:https://www.cnblogs.com/xiejn/p/11892755.html
Copyright © 2011-2022 走看看