首先应该准备好数据库:熟悉MySQL使用https://blog.csdn.net/weixin_53094331/article/details/131401863?spm=1001.2014.3001.5502

首先创建一个maven工程

然后点击进入pom.xml文件,配置连接MySQL数据库所需要的配置文件。

可复制mysql配置文件如下,填写到上图位置即可。

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.49</version>
        </dependency>

完成填写之后,ctrl +shift +o安装包和依赖

或者右键单击reload project,效果也是相同等效的。(操作如下所示)

如果写完配置文件,还无法自动安装包以及相关依赖,可能是配置文件的位置放错了,别问为什么,因为我第一次就放错了,发现无法装包,实习企业老师一眼就看出了bug的原因,我把新添加的配置文件放错了,到时无法生成相关的包。

所有<dependency></denpendency>配置文件一定要放在<dependencies></dependencies>包含的括号之内,不然会出现我前面的错误,无法装包。

若果安装包成功了,右上角就不会显示红色的感叹号,而是只有黄色的感叹号或者没有感叹号。

包安装结束之后,就可以进行创建java工程,测试连接数据库了。

以下是idea中java工程中jdbc访问mysql数据库的的基本源程序代码(可复制)及其放置位置:

package com.neuedu.jdbc;

import java.sql.*;
import  java.util.Date;

public class JDBCTest {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {


        String url = "jdbc:mysql://localhost:3306/nefu";
//此处有可能出现错误,错误的原因,MySQL版本太低,出现utf8等编码不兼容的情况,
//在url后面可以按照以下格式添加内容:
//String url = "jdbc:mysql://localhost:3306/nefu?
//useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC";
        String uname = "root";
        String pwd  = "root";
        String sql = "select id, username ,password ,createtime from user ";

        Class.forName("com.mysql.jdbc.Driver");

        Connection conn = DriverManager.getConnection(url, uname, pwd);


        Statement stmt = conn.createStatement();

        ResultSet rs = stmt.executeQuery(sql);

        while (rs.next()){
            int id = rs.getInt("id");
            String username = rs.getString("username");
            String password = rs.getString("password");
            Date createtime = rs.getTimestamp("createtime");

            System.out.println("id = " + id);
            System.out.println("username = " + username);
            System.out.println("password = " + password);
            System.out.println("createtime = " + createtime);

        }

        rs.close();
        stmt.close();
        conn.close();

    }
}

以下是IDEA 中JDBC连接MySQL得到带有详细注释的代码:

package com.neuedu.jdbc;

import java.sql.*;
import  java.util.Date;

public class JDBCTest {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {


        String url = "jdbc:mysql://localhost:3306/nefu";
        String uname = "root";//加载进入数据库的账户
        String pwd  = "123456";//加载进入数据的密码
        String sql = "select id, username ,password ,createtime from user ";
        //待执行的sql语句,
        Class.forName("com.mysql.jdbc.Driver");
        //将mysql的driver注册到系统的DriverManager中
        Connection conn = DriverManager.getConnection(url, uname, pwd);
        //Connection可以理解为帮助建立数据库连接的一个类,然后conn是一个实例化的已经建立连接的对象

        Statement stmt = conn.createStatement();
        //Statement 类建立一个,对前面已经建立连接的数据库,进行操作的语句存放。
        //Statement包含的常用的方法有executeQuery(对应sql语句中的select),executeUpdate(对应sql语句中的增删改查)
        ResultSet rs = stmt.executeQuery(sql);
        //ResultSet创建一个存放结果集的类,创建的rs,具有rs.getString(列名)得到该行对应列元素的值,rs.getTimestamp(时间列的列名)是得到时间类列的元素值。
        while (rs.next()){
            int id = rs.getInt("id");
            String username = rs.getString("username");
            String password = rs.getString("password");
            Date createtime = rs.getTimestamp("createtime");

            System.out.println("id = " + id);
            System.out.println("username = " + username);
            System.out.println("password = " + password);
            System.out.println("createtime = " + createtime);

        }

        rs.close();//从下往上以此从底层关到顶层,避免资源被滥用,依次为rs.close(),stmt.close(),conn.close();
        stmt.close();
        conn.close();

    }
}

 

主要步凑,在Test Sources Roots的绿色文件下创建一个com.neuedu的包,然后再在com.neuedu  packages的文件包下创建jdbc packages文件包,然后再创建JDBCTest的javaclass文件用于存放java连接数据库的测试文件。

 另外,我要谈一谈,我在创建工程过程中对IDEA的疑惑,想必大家也或许会有些疑惑。

我为了,试一试自己是否完全掌握了,我在src文件加下面,新创建了一个和test《同级别》的文件夹try,想创建一个绿色和test目录下一样是绿色的文件夹java,殊不知,test下的绿色java(其可创建可执行的java文件)是随着maven工程文件的创建而自动产生的Test Sources Roots,

然而try文件夹下并不包含绿色java不能通过普通的右键单击创建,这就导致了无法在自己创建的try文件下创建可执行的java文件,如下所示:

若想要在try文件下创建可执行的java class文件,就需要另辟道路,先创建绿色的test sources

boots 文件,然后才能间接创建java class文件(之前遇到过几次一直不知道如何解决,今天终于解决了,很开心)

具体做法如下:

首先右键单击try文件,然后鼠标放在Mark Directory as复选行,然后点击Test Sources Root即可完成创建,然后就可以创建可执行的java class 文件了。

在这里插入一个小知识,问大家一个问题,大家知道前面所说的Sources Root文件,Test Sources Root文件分别指的是创建的maven工程的哪几部分文件吗?

相比大家都和我一样有些疑惑,为什么有些文件是绿色的,有些文件是蓝色的,还有些文件没有颜色,先告诉大家也提醒自己蓝色(Sources Root文件)和绿色(Test Sources Root文件)是可以创建可执行的java class的可执行文件的

 下面先给大家指出,Sources Root,Test Sources Root ,Resources Root 分别指代idea工程中的那部分文件。

 Source roots:

个文件夹和它的子文件夹中包含源码,在构建工程时,需要作为一部分被编译进去

Resource roots:

文件夹用于存放你的应用中需要用到的资源文件(如:图片、xml或者properties配置文件等)

Test resource roots

 只有在java模式中可以使用,存放测试源码中关联的资源文件


正常的话创建maven工程的话,会自动出现main文件(包括蓝色Source Roots源代码文件,和无色Resources Roots文件)

 test文件(Test Sources Root)也是自动出现的

以上工作都做好了之后,就可以执行com.neuedu.jdbc中的jdbc 的class文件了,执行结果如下所示。


以上就是IDEA创建maven工程JDBC(Java Database Connectivity 【JAVA数据库连接】)连接MySQL数据库的全部过程了。

更多推荐