栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

在Eclipse中使用JDBC连接MySQL(mysql-connector-java-8.0.28版本)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在Eclipse中使用JDBC连接MySQL(mysql-connector-java-8.0.28版本)

版本:

Java 17

MySQL 8.0

mysql-connector-java-8.0.28

(注意mysql-connector版本和MySQL版本要匹配~) 


目录

Java连接数据库分为3步

1.下载驱动,然后在Eclipse的project中添加驱动的jar包

2.在Eclipse中建立一个GetDBConnection类,用于加载驱动并连接数据库

① 注册jdbc驱动

②建立连接

③catch exception

3.创建用于执行SQL语句的类



Java连接数据库分为3步

1.下载驱动,然后在Eclipse的project中添加驱动的jar包

电脑里安装了MySQL、JDK、Eclipse还不够,只有安装了相应的JDBC-MySQL数据库连接器(即数据库驱动), Java才能访问MySQL数据库服务器上的数据库。

先登录下面的网址,下载JDBC-MySQL数据库连接器。

MySQL :: Download Connector/Jhttps://dev.mysql.com/downloads/connector/j/在select operating system中选择platform independent, 下载zip。

mysql-connector-java-8.0.28,即我们需要的数据库驱动。(目前版本已经更新至8.0.29)

下载完成后,打开cmd, 在cmd里输入 java -cp mysql-connector-java-8.0.28.jar, 检验是否安装成功。

安装成功后,在eclipse新建一个project,右键project, 选择BuildPath -> Configure Build Path-> libraries ->classpath->点击右边的add external jars->找到mysql-connector-java-8.0.28.jar添加。

添加完后是下图这样子滴~

project里多了个referenced libraries~ 

2.在Eclipse中建立一个GetDBConnection类,用于加载驱动并连接数据库

在你的project里创建一个GetDBConnection类,数据库公共操作类。 公共类可以减少代码的重复,要用的时候直接调用。

简单来说,就是你把加载驱动和连接数据库的代码模板放到公共类里,用的时候调用即可。

package 查询2;
import java.sql.*;

public class GetDBConnection {
	public static Connection connectDB(String DBname, String userid, String p) {
	Connection con =null;

	String driver = "com.mysql.cj.jdbc.Driver";//jdbc驱动
	String uri= "jdbc:mysql://localhost:3306/"+DBname
			+"?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC";

	try { 
		Class.forName(driver);//①注册驱动
		con = DriverManager.getConnection(uri,userid,p);//②建立连接
		if(!con.isClosed()) {
			System.out.println("数据库连接成功");
		}
	}catch(ClassNotFoundException e) {
		System.out.println("数据库驱动未安装");
		//即com.mysql.cj.jdbc里的Driver.class没安装
	}catch(SQLException e) {
		e.printStackTrace();
		System.out.println("数据库连接失败");
	}
	return con;

}}

这个类里的代码是干嘛用的呢? 

下面来解析一下这些代码的具体的用途。

① 注册jdbc驱动

String driver = "com.mysql.cj.jdbc.Driver";

Class.forName(driver);

//注册驱动.

②建立连接
Connection con =null;

String uri= "jdbc:mysql://localhost:3306/"+DBname
			+"?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC";

con = DriverManager.getConnection(uri,userid,p);//②建立连接
		if(!con.isClosed()) {
			System.out.println("数据库连接成功");
		}

解析String uri的组成部分:

“jdbc:mysql://localhost:3306/" 

DBname   

// 要连接的数据库的名字

"?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC"

//useUnicode=true&characterEncoding=UTF-8 这两部分是用于指定客户端和服务端之间的编码转换

(如果数据表的记录中有汉字,就必须要添加characterEncoding=utf8)

//mysql的版本5.7之后的版本必须要加useSSL=false

//serverTimezone=UTC  设置时区的,可以设成别的~

建立连接的方法:

Connection con = DriverManager.getConnection(uri,userid,p);
//这三个参数分别是——你要用的数据库名,你的MySQL用户名,你的MySQL密码

③catch exception

这部分不多说了。

3.创建用于执行SQL语句的类

完成以上步骤后,终于可以创建一个操作数据库的类啦!

我数据库中的student表的记录如下:

 我现在想要查询student表中名字是“赵”的同学。

所以我在eclipse的project中创建一个类,先调用公共类连接数据库,然后执行sql语句操作,最后关闭。

具体代码和解释如下:

package 查询7;
import java.sql.*;
import 查询2.GetDBConnection; //数据库连接代码封装在GetDBConnection中

public class Eg1 {
		public static void main(String[]args) {
			Connection dbcon; //连接对象dbcon 
			Statement sql; 
			ResultSet rs; 
			
			
			dbcon = GetDBConnection.connectDB("你的数据库名字","你的MySQL用户名","你的MySQL密码");
			if (dbcon==null) 
				System.out.println("连接失败");
			
			
			String sqlstat = "select*from student where sname ='赵'";
			
			try{ 
				
				sql=dbcon.createStatement();
				
				
				rs=sql.executeQuery(sqlstat);
				
				
				
				while(rs.next()) {
					int sid = rs.getInt(1); //表格第二列的列名是sid, int型
					String sname= rs.getString(2);//第二列
					int sage= rs.getInt(3);//第三列
					System.out.println("sid:"+sid+"t"+"sname:"+sname
							+"t"+"sage:"+sage+"t");	
				}
				
				dbcon.close();
			}catch(SQLException e) {}
			}
}

最后的输出就是:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/884651.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号