Java动态网站发开--MySQL数据库连接

此项目基于IDEA创建。

1.创建数据库

开启mysql,创建一个Student数据库、t_stu的表。表结构和数据如下:
Java动态网站发开--MySQL数据库连接_第1张图片

2.创建项目

选择自己的路径创建项目。
Java动态网站发开--MySQL数据库连接_第2张图片
Java动态网站发开--MySQL数据库连接_第3张图片
Java动态网站发开--MySQL数据库连接_第4张图片

3.配置项目

3.1创建一个lib包,将MySQL的驱动导入

Java动态网站发开--MySQL数据库连接_第5张图片
因为我自己的MySQL是8.0.11版本的,所以就选择对应版本的驱动。
要根据自己的MySQL版本选择对应的驱动,不然会报错。

查看mysql数据库版本的方法

cmd里输入 mysql -V,就可以查到啦~

在这里插入图片描述

下载MySQL驱动包

https://downloads.mysql.com/archives/c-j/
在这里插入图片描述
将jar包复制到lib包
在这里插入图片描述
在这里插入图片描述

3.2配置项目

Java动态网站发开--MySQL数据库连接_第6张图片

添加lib包

Java动态网站发开--MySQL数据库连接_第7张图片
Java动态网站发开--MySQL数据库连接_第8张图片
Java动态网站发开--MySQL数据库连接_第9张图片

添加MySQL驱动

Java动态网站发开--MySQL数据库连接_第10张图片

4.代码

4.1在src下创建一个类

Java动态网站发开--MySQL数据库连接_第11张图片

4.2数据库链接

  1. 注册驱动
  2. 建立链接
  3. 创建statement对象
  4. 执行sql
  5. 遍历结果集
  6. 释放资源

4.3创建一个util包,将相关配置放到里面

Java动态网站发开--MySQL数据库连接_第12张图片

JDBCUtil.java

package com.jdbcutil;
import java.sql.*;
public class JDBCUtil {
    static String url="jdbc:mysql://localhost/student?serverTimezone=GMT%2B8&useSSL=false"; //数据库链接
    static String user="root";//用户名
    static String password="root"; //密码

    public static Connection getCon(){
        Connection con=null;
        String driver = "com.mysql.cj.jdbc.Driver";
        try {
            //1.注册驱动
            Class.forName(driver);
            //2.建立链接
            con = DriverManager.getConnection(url, user, password);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return con;
    }
    //释放资源
    public static void release(ResultSet rs,Statement st,Connection con) {

        clossRs(rs);//关闭结果集
        clossSt(st); //关闭statement对象
        clossCon(con); //关闭连接
    }

    private static void clossRs(ResultSet rs) {
        try {
            if (rs != null) { //判断资源是否为空
                rs.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            rs = null;
        }
    }

    private static void clossSt(Statement st) {
        try {
            if (st != null) { 
                st.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            st = null;
        }
    }

    private static void clossCon(Connection con) {
        try {
            if (con != null) { 
                con.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            con = null;
        }
    }
}
需要注意的是不同版本的url、driver写法可能不一样,如果报错的话,查一查自己MySQL驱动版本的写法

JDBCTest.java

package com.jdbc;

import com.jdbcutil.JDBCUtil;

import java.sql.*;

public class JDBCTest {
    public static void main(String[] args) {
        Connection con = null;
        Statement st = null;
        ResultSet rs = null;
        try {
            //1.注册驱动
            //2.建立链接
            con=JDBCUtil.getCon();


            //3.创建statement对象,链接数据库
            st = con.createStatement();
            //4.执行sql,得到ResultSet.rs接收sql结果
            String sql = "select * from t_stu";
            rs = st.executeQuery(sql);
            //5.遍历结果集
            while (rs.next()) {
                int id = rs.getInt("id");
                String name = rs.getString("name");
                int age = rs.getInt("age");
                System.out.println("id:" + id + "  name:" + name + "  age:" + age);
            }

        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            //6.释放资源
            JDBCUtil.release(rs, st, con);


        }
    }
}

运行结果

Java动态网站发开--MySQL数据库连接_第13张图片

你可能感兴趣的:(Java,java,jdbc,mysql,数据库,intellij,idea)