Java使用JDBC连接MySQL数据库

时间:2022-08-07 06:27:56

1、引用

JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。

2、下载

连接MySQL数据库要先下载Connector/J的库文件,下载Connector/J的官网地址:http://www.mysql.com/downloads/connector/j/,下载后是个压缩文件,我们只需解压出里面的jar库文件,然后导入到项目工程中。这是我用的Connector/J 版本:http://pan.baidu.com/s/1mildht2

MySQL数据库连接的用户名是root,密码是123456,端口是3306,里面有一个自己新建的数据库名为student,student里面有一个新建的表为stuinfo,MySQL数据库安装包下载:http://pan.baidu.com/s/1sleNubV

MySQL的相关语句:

/* 以下仅是一些基本的SQL语句 */
create database student; /* 创建一个数据库,数据库名为student */
show databases; /* 查看数据库 */
use student; /* 使用名为student的数据库 */
create table stuinfo(id char(12),name char(20),age int); /* 创建一个表,表名为stuinfo */
show tables; /* 查看表 */
insert into stuinfo values('','zhangsan',21); /* 插入一条记录到stuinfo表中 */
select * from stuinfo; /* 查询表中所有的记录 */
select id,name from stuinfo; /* 查询表中的指定字段 */
select * from stuinfo where age=21; /* 带条件查询 */ delete from stuinfo where id=''; /* 带条件删除表中指定记录 */
drop table stuinfo; /* 删除一个表 */

更多MySQL语句可查看:常用的MySQL数据库操作语句大全

3、在Eclipse中导入Connector/J库文件的步骤:

项目工程:新建一个Java项目,添加一个TestDB类,将下面第4步的源代码拷贝进去即可。

(1)在项目工程中新建一个名为"lib"的文件夹,然后将"mysql-connector-java.jar"文件拷贝到该文件夹内。

Java使用JDBC连接MySQL数据库

(2)右击项目,点击 Properties / Java Build Path / Libraries / Add JARS / 选择lib文件夹下的mysql-connector-java.jar / OK

Java使用JDBC连接MySQL数据库

Java使用JDBC连接MySQL数据库

Java使用JDBC连接MySQL数据库

4、编译运行:

注意在编译运行时应先在项目中导入Connector/J库文件,启动MySQL数据库服务,确保用户名和密码正确,且数据库和表必须已创建,否则会抛出异常。

源代码:

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; public class TestDB { public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null; // MySQL的JDBC连接语句
// URL编写格式:jdbc:mysql://主机名称:连接端口/数据库的名称?参数=值
String url = "jdbc:mysql://localhost:3306/student?user=root&password=123456"; // 数据库执行的语句
String sql = "insert into stuinfo values('201307020010','zhangsan',21);";//插入一条记录
//String sql = "create table stuinfo(id char(12),name char(20),age int);";//创建一个表 // 查询语句
String cmd = "select * from stuinfo;";
try {
Class.forName("com.mysql.jdbc.Driver"); // 加载驱动
conn = DriverManager.getConnection(url); // 获取数据库连接
stmt = conn.createStatement(); // 创建执行环境
stmt.execute(sql); // 执行SQL语句
// 读取数据
rs = stmt.executeQuery(cmd); // 执行查询语句,返回结果数据集
rs.last(); // 将光标移到结果数据集的最后一行,用来下面查询共有多少行记录
System.out.println("共有" + rs.getRow() + "行记录:");
rs.beforeFirst(); // 将光标移到结果数据集的开头
while (rs.next()) { // 循环读取结果数据集中的所有记录
System.out.println(rs.getRow() + "、 学号:" + rs.getString("id")
+ "\t姓名:" + rs.getString("name") + "\t年龄:"
+ rs.getInt("age"));
}
} catch (ClassNotFoundException e) {
System.out.println("加载驱动异常");
e.printStackTrace();
} catch (SQLException e) {
System.out.println("数据库异常");
e.printStackTrace();
} finally {
try {
if (rs != null)
rs.close(); // 关闭结果数据集
if (stmt != null)
stmt.close(); // 关闭执行环境
if (conn != null)
conn.close(); // 关闭数据库连接
} catch (SQLException e) {
e.printStackTrace();
}
}
} }

运行结果:

Java使用JDBC连接MySQL数据库

5、注意事项

(1) 在编译运行源代码时要先导入Connector/J的库文件,否则会出错。

(2) 运行时要确保MySQL数据库服务已启动,且源代码的用户名和密码、端口、数据库名、表名要与数据库的一致,否则将抛出异常。

(3) 如果代码中有不懂的地方可以参考一下:Java开发中JDBC连接数据库代码和步骤总结.