【2023.11.23】JDBC基本连接语法学习➹

1.导入jar包依赖:mysql-connector-java-8.0.27.jar

2.连接数据库!

3.无法解析类->导入java.sql.*,(将项目方言改为Mysql)

JDBC,启动!!

public class Main {
    public static void main(String[] args) {
        //1. 通过DriverManager来获得数据库连接
        try (Connection connection = DriverManager.getConnection("连接URL","用户名","密码");
             //2. 创建一个用于执行SQL的Statement对象
             Statement statement = connection.createStatement()){   //注意前两步都放在try()中,因为在最后需要释放资源!
            //3. 执行SQL语句,并得到结果集
            ResultSet set = statement.executeQuery("select * from 表名");
            //4. 查看结果
            while (set.next()){

            }
        }catch (SQLException e){
            e.printStackTrace();
        }
//5. 释放资源,try-with-resource语法会自动帮助我们close

    }
}

1. 通过DriverManager来获得数据库连接
当方法getConnection被调用时,DriverManager将尝试从初始化时加载的驱动程序中找到合适的驱动程序,并创建Connection。

(由于Connection和Statement都需要执行close方法,使用try-with-resources的语法可以简化代码书写)

2. 创建一个用于执行SQL的Statement对象
创建connetion(数据库连接对象),用于向数据库发送SQL语句的Statement对象。没有参数的SQL语句通常使用Statement对象执行。如果同一SQL语句被多次执行,那么使用PreparedStatement对象可能会更高效。

(由于Connection和Statement都需要执行close方法,使用try-with-resources的语法可以简化代码书写)

3. 执行SQL语句,并得到结果集

select语句的查询结果存放在ResultSet对象里面。

【2023.11.23】JDBC基本连接语法学习➹_第1张图片

使用JDBC查询实例:

import java.sql.Connection;
import java.sql.*;


public class Main {
    public static void main(String[] args) {
        //1. 通过DriverManager来获得数据库连接
        try (Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/JDBCtest","root","66666");
             //2. 创建一个用于执行SQL的Statement对象
             Statement statement = connection.createStatement()){   //注意前两步都放在try()中,因为在最后需要释放资源!
            //3. 执行SQL语句,并得到结果集
            ResultSet set = statement.executeQuery("select * from users");
            //4. 查看结果
            while (set.next()){//若结果集链表存在下一个结果,则指针移动
                System.out.println(set.getInt(1)+set.getString(2)+set.getString(3));
                //按表的每一列输出结果:依次为ID\Name\PassWord
            }
        }catch (SQLException e){
            e.printStackTrace();
        }
//5. 释放资源,try-with-resource语法会自动帮助我们close

    }
}

将查询结果映射为对象

将数据库中数据转换为一个实体类来进行操作:

import java.sql.Connection;
import java.sql.*;

class Student {
    Integer sid;
    String name;
    String password;
    public Student(Integer sid, String name, String password) {
        this.sid = sid;
        this.name = name;
        this.password = password;
    }

    public void say(){
        System.out.println("我叫:"+name+",学号为:"+sid+",我的密码是:"+password);
    }
}

public class Main {
    public static void main(String[] args) {
        //1. 通过DriverManager来获得数据库连接
        try (Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/experiment4","root","123456");
             //2. 创建一个用于执行SQL的Statement对象
             Statement statement = connection.createStatement()){   //注意前两步都放在try()中,因为在最后需要释放资源!
            //3. 执行SQL语句,并得到结果集
            ResultSet set = statement.executeQuery("select * from users");
            //4. 查看结果
            while (set.next()){
                Student student = new Student(set.getInt(1), set.getString(2), set.getString(3));
                student.say();
            }

        }catch (SQLException e){
            e.printStackTrace();
        }
    }
}

你可能感兴趣的:(学习日志,数据库,sql)