Ran-Chen

IntelliJ IDEA集成了众多插件,方便开发者使用,使用其自带的Database模块就可以很方便的配置、连接到数据库,本次操作以MySQL为例,其中testjdbc数据库已经提前建好,里面有两张表emp_table 和 t_user,相关信息如下图。

连接到MySQL数据库

1、选择数据源

在IDEA中新建一个Java工程后,最右侧侧边栏会有个 Database 标签,点击此标签,然后点击+按钮
,选择Data Source,选择MySQL,如果是其他数据源,选择其他对应按钮即可。过程如下图所示。

2、下载驱动

如下图是下载好MySQL驱动的情况。如果是第一次进入此界面并且没有驱动,IDEA会在Driver处提示没有下载对应数据库类型的驱动,直接点击,就会自动下载,稍作等待后,结果显示为MySQL,若点击此标签,可以对MySQL的驱动文件进行进一步配置。

3、配置账户、密码信息

如上图所示,需要填写数据库账户信息,这里我的用户名User为root,由于是本地数据库,所以Host填写为localhost,端口Port为3306,Password填写用户名对应的密码即可,Database可以填写想连接的数据库名,也可以暂时不填,待连接上后再设置。填写以上所有信息后,点击Test Connection按钮,如果显示成功Successful,说明连接成功,点击OK按钮,配置完成。

4、查看、修改数据库

  • 连接到数据库后,在Database标签下,可以查看数据库结果,如下图所示,可以看到testjdbc库下有两张表,分别是emp_table 和 t_user,并且能看到表的列信息。如下图所示。

  • 点击表名或者列名,就可以查看表信息,也可以修改表信息,如下图所示。

使用JDBC操作数据库

1、导入驱动包到工程

  • Database标签下,右键刚刚建立的数据源名,选择属性Properties,进入之前配置数据源的界面,如下图所示。

  • 点击Driver处MySQL,查看驱动信息,如下图所示。

  • 查看驱动包在计算机中的位置,记下这个路径,方便后面导入这个jar包,如下图。

  • 查看到MySQL驱动包的位置后,关闭窗口,在主界面点击File->Project Structure,进入工程设置界面。然后在左侧栏,点击Modules,再选择Dependencies,再点击右侧的+按钮,选择JARs or directories,找到上面MySQL驱动jar包的位置,选择这个jar文件。成功导入后,在Export栏下会有两项,分别是jdk和刚刚导入的jar包,如下图所示。

导入成功后,在工程目录External Libraries下面也会出现导入的驱动包名称,如下图所示。

2、使用jdbc操作数据库

import java.sql.*;

public class ConnMySQL {
    public static void main(String[] args) throws Exception {
        Connection conn = null;
        try {
            // 加载驱动类
            Class.forName("com.mysql.jdbc.Driver");
            long start =System.currentTimeMillis();

            // 建立连接
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/testjdbc",
                    "root", "【填写对应的密码】");
            long end = System.currentTimeMillis();
            System.out.println(conn);
            System.out.println("建立连接耗时: " + (end - start) + "ms 毫秒");

            // 创建Statement对象
            Statement stmt = conn.createStatement();

            // 执行SQL语句
            ResultSet rs = stmt.executeQuery("select * from t_user");
            System.out.println("id\tusername\tpwd\t\tregTime");
            while (rs.next()) {
                System.out.println(rs.getInt(1) + "\t" + rs.getString(2)
                        + "\t\t" + rs.getString(3) + "\t\t" + rs.getString(4));
            }


        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            try {
            if (rs != null) {
                rs.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        
        try {
            if (stmt != null) {
                stmt.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
            try {
                if (conn != null) {
                    conn.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }

    }
}

3、程序执行结果

  • 上面的程序中,使用了一条查询语句,查询表t_user的内容,执行程序后的结果如下图。

分类:

技术点:

相关文章: