JDBC连接MySQL数据库

时间:2022-12-23 13:05:41

注意:在连接之前要确保MySQL数据库服务是打开的,并且JDBC的加载驱动已经导入至当前项目中

下面具体讲解JDBC连接MySQL数据库的具体操作,以及代码示例:

  1. 操作流程:
    1.1 加载数据库驱动

    两种方式:
    1)新建com.mysql.jdbc.Driver(MySQL jar中的类)对象;
    2)用Class.forName()直接加载.

    1.2 编写连接:

    jdbc:mysql://主机名:连接端口(3306)/数据库名称?user=userName&password=PASSWORD
    一定要注意,字符间不能有空格,否则会出错

    1.3 封装连接地址并建立连接

    用java.sql.DriverManager类当中的public static Connection getConnection(String url)
    通过该方法每获取到一个Connection对象就代表成功建立一次连接。

  2. 代码示例

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

//该功能类中的方法都是静态的
//在使用时可以方便地调用
public class ConnectionMysql {
//MySQL驱动
private static final String DBDRIVER = "com.mysql.jdbc.Driver";

//连接地址
//之所以加入useUnicode=true和characterEncoding=UTF8,是为防止乱码
private static final String DBURL = "jdbc:mysql://localhost:3306/db_mysql?"
+ "user=root&password=用户密码&useUnicode=true&characterEncoding=UTF8";

public static void connect(Connection conn) {
try {
//加载驱动
//加载驱动的另一种方法是直接创建com.mysql.jdbc.Driver对象
//new com.mysql.jdbc.Driver();
Class.forName(DBDRIVER);
System.out.println("succeed to loading driver!");
try {

//尝试建立连接
conn = DriverManager.getConnection(DBURL);
System.out.println("succeed to connecting");
} catch (SQLException e) {
System.out.println("fail to connect");
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
System.out.println("fail to load driver");
e.printStackTrace();
}
}

public static Connection getConn(){
Connection conn = null;
try {
conn = DriverManager.getConnection(DBURL);
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
}

注意:数据库的操作也是一种资源操作,因此当我们使用结束后一定要记得关闭连接

import java.sql.SQLException;
import java.sql.Connection;
//该功能类中的方法都是静态的
//在使用时可以方便地调用
public class CloseConnection {
public static void close(Connection conn){
try {
conn.close();
System.out.println("succeed to closing connection");
} catch (SQLException e) {
e.printStackTrace();
System.out.println("fail to close connection!");
}
}
}

总结:JDBC建立MySQL数据库连接,时要注意以下几个问题
1.建立连接前保证MySQL服务已经启动,且编译器当中已经导入相应的驱动
2.操作顺序是:加载驱动->建立连接
3.加载驱动通过Class.forName()或者直接建立驱动对象;建立连接以java.sql.DriverManager中的getConnection()成功获取Connection对象为先决条件
4.任何访问资源的操作,最终一定要关闭资源