文章目录

  • 一、开发环境
  • 二、创建数据表
  • 1. 用命令行创建
  • 三、创建java工程
  • 1.在IDEA中创建一个工程:Fir (工程名自拟)
  • 2.在Fir工程下,创建lib文件夹(存在jar驱动文件)
  • 3.导入mysql驱动(mysql-connector-java-5.1.13-bin.jar)
  • 4.载入Build Path,否则会出错
  • 5.在src下创建一个包,包内创建一个class类
  • 6.注意事项
  • 7.讲解
  • 7.1 Java连接Mysql的代码如下:
  • 7.2Mysql执行查看语句
  • 7.3Mysql插入语句
  • 8.完整TestJDBC.java文件(查看)


一、开发环境

Java版本:Java 18
IDEA版本:Intellij IDEA Community 2022.2
MySQL版本:MySQL 5.7

二、创建数据表

1. 用命令行创建

CREATE DATABASE test;
CREATE TABLE stu(
   id INT,
   name CHAR(2),
   sex CHAR(1)
);

三、创建java工程

1.在IDEA中创建一个工程:Fir (工程名自拟)

2.在Fir工程下,创建lib文件夹(存在jar驱动文件)

鼠标右键点击Fir工程 ——> New ——>Folder、
文件夹命名为lib

3.导入mysql驱动(mysql-connector-java-5.1.13-bin.jar)

把mysql-connector-java-5.1.13-bin.jar文件,复制到jdbc工程下的lib文件夹里。
ps:如果下载不了jar文件,可以私信我,或直接百度也行

4.载入Build Path,否则会出错

鼠标右键点击该驱动——>Build Path——>Add to Build Path

5.在src下创建一个包,包内创建一个class类

鼠标右键点击src → New → package,包名自己任意取 如jdbc;
再在该包下创建一个class类,名字为TestJDBC

6.注意事项

7.讲解

7.1 Java连接Mysql的代码如下:

private static String url = "jdbc:mysql://localhost:3306/test"; 

private static String userName = "root";

private static String password = "root";//密码自己填写

public static void main(String[] args) {

MysqlConnectTest mysql= new MysqlConnectTest();

Connection con = mysql.getConnection();

if(con==null){    

            System.out.println("与mysql数据库连接失败!");    

        }else{    

            System.out.println("与mysql数据库连接成功!");    

        }

}

7.2Mysql执行查看语句

Statement sts = null;

String sql = "select * from stu ";

ResultSet resul = null;

try {

sts = (Statement) con.createStatement();

resul = sts.executeQuery(sql);

} catch (SQLException e) {

e.printStackTrace();

}

System.out.println("查询的结果如下:");

while(resul.next()){
System.out.print("[");
System.out.print( resultSet.getInt(1)+"\t"); //第一列 对应的字段
// System.out.print( resultSet.getInt("id")+"\t");
System.out.print( resultSet.getString("name")+"\t");
System.out.print( resultSet.getString("sex")+"\t");
System.out.println("]");

}

7.3Mysql插入语句

String sql = "insert into stu values (6,'李白','女')";

int i = 0;

try {

sts = (Statement) con.createStatement();

i = sts.executeUpdate(sql);

if(i == -1){

System.out.println("插入失敗");

}else{

System.out.println("插入成功");

}
 
} catch (SQLException e) {

e.printStackTrace();

}

8.完整TestJDBC.java文件(查看)

package jdbc;

import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;


public class TestJDBC {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Connection conn = null;
        try {
            //1.数据库连接的4个基本要素
            //①JDBC URL用于标识一个被注册的驱动程序,驱动程序管理器通过这个URL选择正确的驱动程序,从而建立到数据库的连接;
            //jdbc:表示URL中的协议
            //mysql:子协议,用于标识mysql数据库驱动程序
            //localhost:本机的IP地址
            //3306:mysql 默认端口号 
            //test:表示访问test数据库
            String url = "jdbc:mysql://localhost:3306/test";
            
            //user:登录数据库的用户名
            String user = "root"; //自己的账号
            //password:用户名对应的密码,这些都是自己之前设定的
            String password = "  "; //自己的密码
            //mySql的驱动:com.mysql.jdbc.Driver
            String driverName = "com.mysql.jdbc.Driver";
             
            //2.实例化Driver
            Class clazz = Class.forName(driverName);
            Driver driver = (Driver) clazz.newInstance();
             
            //3.通过DriverManager来注册驱动
            DriverManager.registerDriver(driver);
            //4.通过DriverManager的getConnection方法,获取Connection类的对象
            conn = DriverManager.getConnection(url, user, password);
            //5.打印出conn对象
            System.out.println(conn);
            
            //获取statement对象
            /*Statement statement = connection.createStatement();*/
            String sql = "select * from stu";
            PreparedStatement preparedStatement = conn.prepareStatement(sql);
            //执行语句
            /**/
            ResultSet resultSet = preparedStatement.executeQuery(sql);
            //返回地数据存储在result中
            
            while (resultSet.next()){
                System.out.print("[");
                System.out.print( resultSet.getInt(1)+"\t"); //第一列 对应的字段
//                System.out.print( resultSet.getInt("id")+"\t");
                System.out.print( resultSet.getString("name")+"\t");
                System.out.print( resultSet.getString("sex")+"\t");
                System.out.println("]");
            }
            if (resultSet != null){
                resultSet.close();
            }
            if(preparedStatement != null){
                preparedStatement.close();
            }
            
            
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            try {
                //当conn不为空时
                if(conn != null) 
                    //关闭conn资源
                    conn.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
		

	}

}

注:该方法并非连接MySQL的最佳方法,但是对于入门者,比较容易理解

注意:

  1. 要填上自己数据库账号,和 密码;
  2. 要创建test数据库;
  3. 要创建stu表;
  4. stu表的属性 有 id ,name, sex
    否则需要自己修改代码。