一、前言
MySQL是一种很受欢迎的关系型数据库,在Java开发中也经常会用到MySQL。为了使用Java连接MySQL数据库,需要导入对应的JDBC驱动。
JDBC是Java操作数据库的一套API,利用它我们可以连接并操作各种关系型数据库系统,比如MySQL、Oracle、PostgreSQL等
二、MySQL JDBC驱动下载
1、从MySQL官网下载MySQL Connector/J JDBC驱动的jar包,并放置到classpath路径下。
Class.forName("com.mysql.jdbc.Driver");
注意:如果您使用的MySQL数据库为8.0版本,需要使用对应版本的JDBC驱动,从MySQL官网下载,下载地址:https://dev.mysql.com/downloads/connector/j/
三、连接数据库
1、首先需要获取Connection对象,利用的是DriverManager.getConnection()方法获取连接
String url = "jdbc:mysql://localhost:3306/database";
String user = "root";
String password = "password";
Connection conn = DriverManager.getConnection(url, user, password);
2、可以对已经连接的数据库进行验证
if (conn.isValid(3000)) {
System.out.println("Connected Successfully!");
} else {
System.out.println("Connection Failed!");
}
四、执行SQL语句
1、在获取连接后,可以使用Statement、PreparedStatement和CallableStatement向数据库发送SQL语句
//查询
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from user");
while(rs.next()) {
System.out.println(rs.getString(1) + " " + rs.getString(2));
}
//更新
String sql = "update user set name='Tom' where id=1";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.executeUpdate();
五、查询结果处理
1、查询的结果可以使用ResultSet获取
ResultSet rs = stmt.executeQuery("select id,name from user");
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
System.out.println("id: " + id + ", name: " + name);
}
六、关闭连接和Statement
1、在使用完连接或Statement后,需要关闭资源
if (rs != null) {
rs.close();
}
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}