当前位置:主页 > 查看内容

Java连接数据库

发布时间:2021-07-27 00:00| 位朋友查看

简介:目前正在学习java 刚开始挺懵逼的,最近正在学习连接数据库 走了蛮多弯路 不是这里报错就是那里报错 孩子的心态都爆炸了 好在终于还是解决了问题 弯路1因为主要学习网络视频上的内容 所以许多内容都已经过时了 尤其是现在很多人的MySql都已经更新到8.0版本以……

目前正在学习java 刚开始挺懵逼的,最近正在学习连接数据库 走了蛮多弯路 ==== 不是这里报错,就是那里报错 孩子的心态都爆炸了 好在终于还是解决了问题
弯路1:因为主要学习网络视频上的内容 所以许多内容都已经过时了 尤其是现在很多人的MySql都已经更新到8.0版本以上了
所以旧版的驱动包 是无法使用了
这里是旧版的驱动:Class.forName("com.mysql.jdbc.Driver");
新版的驱动:Class.forName("com.mysql.cj.jdbc.Driver");

弯路二:时区问题报错
因为之前连接数据库时并没有设置时区
导致一排密密麻麻的英文看的孩子头疼 尤其对于一个英语水平严重不足的人来说 简直了…

未设置时区的连接:

jdbc:mysql://localhost:3306/这里填写你的数据库?useUnicode=true&characterEncoding=utf-8&useSSL=false

设置时区的数据库连接:

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

useUnicode=ture 可以省略的 主要是你定义数据库时用utf-8还是啥编译的…

弯路三:对于MySql的语句不知道采取何种方法处理;
现在还是有些不明白 不过还是懵懵懂懂明白了一些

类似这种查询语句应该采用executeQuery来处理
sql = "SELECT * FROM user";
            ResultSet rs = stmt.executeQuery(sql);

最后 最后 一定需要下载驱动包…(一句正确的废话)。。。
接下来是本人连接自身数据库的代码:`import java.sql.Statement;
import java.sql.*;
/Jdbc快速入门/
public class mySql {

static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/my_demo?useSSL=false&serverTimezone=UTC";
static final String USER = "root";
static final String PASS = "1977113a";
public static void main(String[] args) {
    Connection conn = null;
    Statement stmt = null;
    try{
        // 注册 JDBC 驱动
        Class.forName(JDBC_DRIVER);

        // 打开链接
        System.out.println("连接数据库...");
        conn = DriverManager.getConnection(DB_URL,USER,PASS);

        // 执行查询
        System.out.println(" 实例化Statement对象...");
        stmt = conn.createStatement();
        String sql;
        sql = "SELECT * FROM user";
        ResultSet rs = stmt.executeQuery(sql);

        // 展开结果集数据库
        while(rs.next()){
            // 通过字段检索
            int id  = rs.getInt("age");
            String name = rs.getString("name");
            int account = rs.getInt("account");

            // 输出数据
            System.out.print("age: " + id);
            System.out.print(", 名字: " + name);
            System.out.print(",  账户列表: " + account);
            System.out.print("\n");
        }
        // 完成后关闭
        rs.close();
        stmt.close();
        conn.close();
    }catch(SQLException se){
        // 处理 JDBC 错误
        se.printStackTrace();
    }catch(Exception e){
        // 处理 Class.forName 错误
        e.printStackTrace();
    }finally{
        // 关闭资源
        try{
            if(stmt!=null) stmt.close();
        }catch(SQLException se2){
        }// 什么都不做
        try{
            if(conn!=null) conn.close();
        }catch(SQLException se){
            se.printStackTrace();
        }
    }
    System.out.println("Goodbye!");
}

最后这里是JDK的下载连接::https://www.oracle.com/java/technologies/javase-jdk14-downloads.html
Mysql下载连接:http://dev.mysql.com/downloads/connector/j/
JDBC的驱动包的网址我忘记保存了 (手动流泪)
若有需要可以添加本人qq 一起交流学习哦
Q:2275966457

;原文链接:https://blog.csdn.net/m0_52948759/article/details/115797977
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!
上一篇:web安全之SQL注入的基础入门(1) 下一篇:没有了

推荐图文


随机推荐