连接数据库(以MySQL为例)

文章目录


前言

面对应用程序的开发,普遍需要保存用户的海量数据。保存粮的库叫粮库,保存水的库叫水库,那么保存数据的库自然叫数据库。有了数据库,客户端,和服务器的内存占比就会大大减少,双方需要调用数据时直接访问数据库即可。


一、数据库是什么?

数据库是指将大量数据按一定的数据结构组织、存储和管理的系统。

数据库可以用来存储和访问数据,确保数据的安全性和一致性,并提供高效的数据操作和管理功能。

数据库可以用于存储各种类型的数据,如文本、图片、音频、视频等。它广泛应用于各个行业和领域,如企业管理、电子商务、金融、医疗等。常见的数据库系统包括关系型数据库(如MySQL、Oracle、SQL Server)、非关系型数据库(如MongoDB、Redis、Cassandra)等。

二、连接步骤

1.手动导入驱动包

首先,电脑要安装好MySQL数据库,MySQL官网界面如下图所示。(安装路径记得留意好,不然之后找驱动包很麻烦)

第二步,点开MySQL的文件所在位置,我用的是java语言,所以查找的是 Connector J 8.0(每个人的版本可能不同)。

所要找到驱动包就是如下图所示了:

最后一步,也是最重要的一步,将这个jar包放置到你开发项目中的lib文件夹中,这样程序运行时就能检测到对应的包了。

2.连接数据库

首先,数据库服务器未运行,那么是无法连接到数据库的。(可以理解为数据库掉线了)

连接数据库的基本步骤如下:

1.使用DriverManager类加载JDBC驱动包。

简单介绍JDBC技术:JDBC (Java数据库连接)是一种基于Java的API,专门设计用于将Java应用程序连接到关系数据库。通过该技术可以实现java语言和sql语言的相互转换,运行java代码,数据库自动根据java代码进行对应的增删改查,或者调取使用数据。(这里也能看出来数据库和后端代码的重要关系了)

2.使用Connection接口连接数据库(没有导入驱动包会报错ClassNotFoundException)。

Connection接口需要三个要素来连接数据库:数据库的url路径,用户名和密码。(关于MySQL数据库的知识和实际操作可以自行了解,url的写法,是指 jdbc:mysql://IP地址:接口/数据库名,该篇内容为java连接数据库)

实操展示:

java 复制代码
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Mysql {
    public static void main(String[] args) {        
            String url = "jdbc:mysql://127.0.0.1:3306/table1";
            String username = "root";
            String password = "***********";
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");           
            @SuppressWarnings("unused")
            Connection con = DriverManager.getConnection(url, username, password);
            System.out.println("Connection successfull!");
        } catch (ClassNotFoundException e) {
            System.out.println("MySQL JDBC Driver not found.");
            e.printStackTrace();
        } catch (SQLException e){
            e.printStackTrace();
        }
    }
}

运行结果:

(1)没有手动添加驱动包的报错结果:

(2)数据库url错误:

(3) 数据库用户名或密码错误:

(4)数据库已掉线:

(5)连接数据库成功:

以上是就是连接数据库可能出现的运行结果。


总结

以上就是使用java语言连接MySQL数据库的相关简单介绍,本文仅介绍了java连接数据库,而java语言的后端代码与数据库的相互连通提供了大量能使我们开发应用程序的可能与潜力。

相关推荐
Nyarlathotep01136 分钟前
Redis的数据结构(4):跳表
数据库·redis
☆56612 分钟前
如何为开源Python项目做贡献?
jvm·数据库·python
Bdygsl14 分钟前
MySQL(5)—— 聚合查询/分组查询/联合查询
数据库·mysql
zihao_tom15 分钟前
Spring WebFlux:响应式编程
java·后端·spring
一只大袋鼠20 分钟前
JavaWeb ——Cookie 对象
java·servlet·javaweb·cookie·小蛋糕
m0_5603964721 分钟前
使用Python进行PDF文件的处理与操作
jvm·数据库·python
lhbian22 分钟前
开启mysql的binlog日志
数据库·mysql
NineData23 分钟前
从个人开发到企业专属集群,NineData 的产品矩阵怎么做的?
运维·数据库·程序员
2301_8166512223 分钟前
用Python监控系统日志并发送警报
jvm·数据库·python