连接数据库(以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语言的后端代码与数据库的相互连通提供了大量能使我们开发应用程序的可能与潜力。

相关推荐
豆沙沙包?11 分钟前
2025年--Lc171--H175 .组合两个表(SQL)
数据库·sql
麋鹿原19 分钟前
Android Room 数据库之数据库升级
数据库·kotlin
聪明的笨猪猪23 分钟前
Java Spring “IOC + DI”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
ThisIsMirror26 分钟前
CompletableFuture并行任务超时处理模板
java·windows·python
珹洺1 小时前
Java-Spring入门指南(二十一)Thymeleaf 视图解析器
java·开发语言·spring
源码集结号1 小时前
一套智慧工地云平台源码,支持监管端、项目管理端,Java+Spring Cloud +UniApp +MySql技术开发
java·mysql·spring cloud·uni-app·源码·智慧工地·成品系统
EnCi Zheng1 小时前
Spring Security 最简配置完全指南-从入门到精通前后端分离安全配置
java·安全·spring
程序员小假1 小时前
为什么这些 SQL 语句逻辑相同,性能却差异巨大?
java·后端
GanGuaGua2 小时前
MySQL:表的约束
数据库·mysql
泉城老铁2 小时前
springboot实现对接poi 导出excel折线图
java·spring boot·后端