Java连接mysql数据库的详细教程(推荐)
作者:弹弹霹雳 发布时间:2024-01-26 10:30:35
该教程是面向那些不知道如何通过java连接mysql数据库的新手,所以该教程用的方法不是最优的方法,但求是最好理解的方法。
需要的工具:
eclipse、mysql、mysql的驱动
mysql驱动链接:mysql-connector-java-5.1.7.zip
如果该链接下载不了的话,可以私信我
1.在eclipse中创建一个工程:jdbc
2.在工程下创建lib文件夹
鼠标右键点击jdbc工程 ——> New ——>Folder、
文件夹命名为lib
3.导入mysql驱动
解压上述连接的压缩包,找到:mysql-connector-java-5.1.7-bin.jar文件,复制到jdbc工程下的lib文件夹里
然后鼠标右键点击该驱动——>Build Path——>Add to Build Path,最终显示如下图,表示你的驱动已经导入成功啦
4.在src下创建一个包,包内创建一个class类
鼠标右键点击src → New → package,包名自己任意取
在该包下创建一个class类,名字为:ConnectionTest
5.在ConnectionTest里的代码如下
注:该方法并非连接MySQL的最佳方法
package com.shaocoder.connection;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConnectionTest {
public static void main(String[] args) {
Connection conn = null;
try {
//1.数据库连接的4个基本要素
//①JDBC URL用于标识一个被注册的驱动程序,驱动程序管理器通过这个URL选择正确的驱动程序,从而建立到数据库的连接;
//jdbc:表示URL中的协议
//mysql:子协议,用于标识mysql数据库驱动程序
//localhost:本机的IP地址
//3306:端口号
//test:表示访问test数据库
String url = "jdbc:mysql://localhost:3306/test";
//user:登录数据库的用户名
String user = "root";
//password:用户名对应的密码,这些都是自己之前设定的
String password = "123456";
//mySql的驱动:com.mysql.jdbc.Driver
String driverName = "com.mysql.jdbc.Driver";
//2.实例化Driver
Class clazz = Class.forName(driverName);
Driver driver = (Driver) clazz.newInstance();
//3.通过DriverManager来注册驱动
DriverManager.registerDriver(driver);
//4.通过DriverManager的getConnection方法,获取Connection类的对象
conn = DriverManager.getConnection(url, user, password);
//5.打印出conn对象
System.out.println(conn);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
//当conn不为空时
if(conn != null)
//关闭conn资源
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
点击运行,运行结果如下代表连接mysql数据库成功
上述方法的最优写法
一、创建jdbc.properties文件
鼠标右键点击src → New → File,文件命名为jdbc.properties,点击finish
二、在jdbc.properties文件里写上连接数据库必备的4个基本信息(注意:等号两边不能加空格)
三、具体实现代码如下
运行程序,能打印出conn对象的具体信息,则成功连接数据库
package com.shaocoder.connection;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
public class ConnectionTest {
public static void main(String args[]) {
InputStream is = null;
Connection conn = null;
try {
//通过类加载器访问jdbc.properties文件,转化为输入流
is = ClassLoader.getSystemClassLoader().getResourceAsStream("jdbc.properties");
Properties pros = new Properties();
pros.load(is);
String user = pros.getProperty("user");
String password = pros.getProperty("password");
String url = pros.getProperty("url");
String driverClass = pros.getProperty("driverClass");
Class.forName(driverClass);
conn = DriverManager.getConnection(url, user, password);
System.out.println(conn);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
if(conn != null)
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
if(is != null)
is.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
来源:https://blog.csdn.net/weixin_48029654/article/details/107331319


猜你喜欢
- Oracle和mysql的一些简单命令对比 1)SQL> select to_char(sysdate,'yyyy-mm-dd
- 引言:2020年12月20python宣布适配苹果m1芯片,这意味着python3.9.0可以不经过rosetta转化,以原生的方式运行在最
- 在网上down了个web项目,在 IntelliJ IDEA 这个编辑器里面跑起来,但是发现domain文件夹下的xml文件都报如下的红色提
- 关于英文的写作有一本十分著名的书,The Elements of Style(风格要素),编写程序也有一本The Elements of P
- 一. 虚拟环境搭建在开发中安装模块的方法:pip install 模块名称之前我们安装模块都是直接在物理环境下安装,这种安装方法,后面一次安
- 把中文字符转换回Unicode字符。见下列代码:<%function unicode(str)dim i,j,c,
- <% dim total(7,2) total(1,1)=200 total(2,1)=800
- 基于Python中求和函数sum的用法详解今天在看《集体编程智慧》这本书的时候,看到一段Python代码,当时是百思不得其解,总觉得是书中排
- 前言以下述环境为例:python=3.7pytorch=1.7.1torchvision==0.8.2cudatoolkit=10.1pyt
- 一、Servlet实现文件上传,需要添加第三方提供的jar包下载地址:1) commons-fileupload-1.2.2-bin.zip
- 一个成熟的数据库架构并不是一开始设计就具备高可用、高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善。这篇博文主要谈MySQL数据库发
- 地理图表什么是地理图表?地理图表有什么作用?地理图表主要应用在那些领域?其实这些问题看看下面的实例图形就已不攻自破了,地理图表一看首先就是地
- 本文实例讲述了python基于queue和threading实现多线程下载的方法,分享给大家供大家参考。具体方法如下:主代码如下: &nbs
- 目录1、typing介绍2、typing的作用3、常用类型3.1 代码示例4、typing模块的其他用法4.1 类型别名4.2 NewTyp
- js数组元素的添加和删除一直比较迷惑,今天终于找到详细说明的资料了,先给个我测试的代码^-^var arr = new Array();ar
- 本文实例讲述了Python Zip和Enumerate用法。分享给大家供大家参考,具体如下:Python 中的 Zipzip的作用:可以在处
- CSS Hack是在标准CSS没办法兼容各浏览器显示效果时才会用上的补救方法,在各浏览器厂商解析CSS没有达成一致前,我们只能用这样的方法来
- 有时候我们不希望浏览器使用缓存加快网页的显示,尤其是那些论坛之类的频繁更新内容的网页,在网上有说可以使用下面的方法来屏蔽缓存,但是我试了效果
- 说明本文根据https://github.com/liuchengxu/blockchain-tutorial 的内容,用python实现的
- 工厂方法(Factory Method)模式又称为虚拟构造器(Virtual Constructor)模式或者多态工厂(Polymorphi