package com.msksbr.SQL;

import java.sql.*;

/**
 * 数据库连接类，用于连接到MySQL数据库并执行SQL查询和更新操作。
 */
public class Connector {
    // 数据库连接对象
    private Connection conn;
    // SQL语句执行对象
    private Statement stmt;
    // 数据库连接URL
    private String url = "jdbc:mysql://192.168.154.139:3306/book";
    // 数据库用户名
    private String user = "root";

    /**
     * 构造方法，初始化数据库连接。
     *
     * @throws ClassNotFoundException 如果找不到MySQL驱动类。
     * @throws SQLException 如果数据库连接失败。
     */
    public Connector() throws ClassNotFoundException, SQLException {
        // 加载MySQL驱动类
        Class.forName("com.mysql.cj.jdbc.Driver");
        // 获取数据库连接
        conn = DriverManager.getConnection(url, user, new PassWord().passWord);
        // 创建SQL语句执行对象
        stmt = conn.createStatement();
    }

    /**
     * 执行SQL查询操作。
     *
     * @param query 要执行的SQL查询语句。
     * @return 查询结果集。
     * @throws SQLException 如果查询执行失败。
     */
    public ResultSet executeQuery(String query) throws SQLException {
        // 执行SQL查询并返回结果集
        return stmt.executeQuery(query);
    }

    /**
     * 执行SQL更新操作。
     *
     * @param query 要执行的SQL更新语句。
     * @return 受影响的行数。
     * @throws SQLException 如果更新执行失败。
     */
    public int executeUpdate(String query) throws SQLException {
        // 执行SQL更新并返回受影响的行数
        return stmt.executeUpdate(query);
    }
}

