JDBC连接数据库

本文详细介绍了如何使用JDBC连接MySQL数据库,包括下载驱动、配置步骤、连接测试以及遇到的中文字符编码问题的解决方案。重点讲解了如何通过修改配置文件解决乱码,适合Java开发者参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JDBC

JDBC指的是Java数据库连接,是一种标准Java应用编程接口,每个数据库厂商需要实现这套接口,我们只需要调用就可以用Java实现连接数据库。

下载驱动包

下载地址为:https://downloads.mysql.com/archives/c-j/
下载
下载后,将其解压。
驱动分为两类:旧版本:mysql-connector-java-5.1.46-bin.jar;
新版本:mysql-connector-java-8.0.11.jar。
不同版本的驱动在连接数据库时有所不同。旧版本的驱动名称为:com.mysql.jdbc.Driver;新版本的驱动名称为com.mysql.cj.jdbc.Driver

驱动配置

(1)在当前项目下新建一个lib文件夹,将驱动jar包放在该目录下
在这里插入图片描述
(2)右击驱动jar包,将其加入到路径当中
在这里插入图片描述

配置成功后显示:
在这里插入图片描述

连接数据库测试

在MySQL数据库中创建一个数据库,并创建一个表用于测试。
代码如下:

package dbtest;
import java.sql.*;

public class MySQLDemo {
	//声明JDBC驱动名及数据库URL
	static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; //根据不同版本号设置
	static final String DB_URL = "jdbc:mysql://localhost:3306/runoob?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC&characterEncoding=UTF-8";
	//声明数据库的用户和密码
	static final String USER = "root";
	static final String PASSWORD = "123456";
	public static void main(String[] args){
		Connection conn = null;
		Statement stmt = null;
		try{
			//注册JDBC驱动
			Class.forName(JDBC_DRIVER);
			//连接数据库
			System.out.println("正在连接数据库.....");
			conn = DriverManager.getConnection(DB_URL,USER,PASSWORD);
			//执行插入
			System.out.println("执行插入......");
			stmt = conn.createStatement();
			//SQL插入语句
			String sql = "INSERT INTO websites VALUES ('2', '淘宝', 'https://www.taobao.com/', '13', 'CN')";
			stmt.execute(sql); //执行
			//执行完后关闭
			stmt.close();
			conn.close();
		}catch(SQLException se){
			//处理SQL异常
			se.printStackTrace();
		}catch(Exception e){
			e.printStackTrace();
		}finally{
			
			try{
				if(stmt!=null) stmt.close();
				if(conn!=null) conn.close();
			}catch(SQLException se2){
				se2.printStackTrace();
			}
		}
		System.out.println("插入一条数据!");
	}
}

遇到的错误:
由于数据库的编码编码不一致,所以当插入中文到数据库时出现了乱码。
可以通过命令 show variables like ‘character%’;查看数据库的编码。
在这里插入图片描述

可以通过set character_set_xxxx=utf8命令来修改,但是这种修改在mysql重启之后就不起作用了。

所以修改字符编码推荐取修改mysql的配置文件,windows下是my.ini文件,linux下是my.conf文件,然后重启mysql服务器生效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值