Java 连接MariaDB

2023-05-16

Java应用程序连接MariaDB数据库

​ 在本文中我们将了解到什么是JDBC驱动程序以及如何打开和安全地关闭MariaDB数据库连接。

什么是 JDBC 驱动程序?

​ JDBC 是一种 API规范:一组定义该技术可以做什么的接口。它没有实现如何连接到特定数据库的细节。相反,它允许数据库供应商实现与他们的数据库“对话”所需的逻辑。每个数据库都有不同的通过网络“说话”的方式(数据库客户端/服务器协议),因此每个数据库都需要与 JDBC 兼容的自定义 Java 代码。此代码被打包为一个名为 JDBC 驱动程序的 JAR 文件。

​ 例如,在 MariaDB,JDBC 驱动程序是MariaDB Connector/J。您必须下载包含驱动程序的 JAR 文件并将其添加到您的 Java 项目中。如果您使用的是 Maven,则可以将依赖项添加到pom.xml文件中。当我们使用所需数据库的 JDBC 驱动程序时,应该尽可能使用最新版本的驱动程序,这样我们将获得最新的安全补丁、性能改进和功能。

创建一个新的 Maven 项目

1.首先我们先在IDEA创建一个新的Maven项目:

在这里插入图片描述

2.选择maven项目:
在这里插入图片描述

3.为mavem项目命名,然后点击Finish

在这里插入图片描述

4.到这新建mavem项目就完成了,下面是新建项目完成后的截图

在这里插入图片描述

创建连接

1.点解IDEA右上角的Database,点击【+】按钮,然后选择Data Source,最后选择MariaDB

在这里插入图片描述

2.输入连接名称、用户名以及密码,然后点击Test Connection按钮

在这里插入图片描述

创建数据和表格

1.在mariadb@localhost连接的控制台下创建数据库和表格

在这里插入图片描述

2.创建后的结果如下截图

在这里插入图片描述

导入JDBC驱动程序的mavem依赖

将依赖项添加到pom.xml文件中

在这里插入图片描述

2.7.4版本的依赖代码如下,大家可以直接拷贝如下代码,也可以到官网下载最新的版本

<dependency>
            <groupId>org.mariadb.jdbc</groupId>
            <artifactId>mariadb-java-client</artifactId>
            <version>2.7.4</version>
</dependency>

编写简单的Java应用程序

1.创建Application类
在这里插入图片描述

2.编写连接数据库和关闭数据库的代码

在这里插入图片描述

上图代码如下

package com.example;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
 
public class Application {
 
    private static Connection connection;
 
    public static void main(String[] args) throws SQLException {
        openDatabaseConnection();
        closeDatabaseConnection();
    }
 
    private static void openDatabaseConnection() throws SQLException{
        System.out.println("Opening database connection...");
 
        connection = DriverManager.getConnection(
                "jdbc:mariadb://localhost:3306/jdbc_demo",
                "user", "password"
        );
 
         System.out.println("Connection valid: " + connection.isValid(5));
    }
 
    private static void closeDatabaseConnection()throws SQLException {
        connection.close();
        System.out.println("Connection valid: " + connection.isValid(5));
    }
 
}

由于在后续的编码过程中,我们将会在方法之间添加功能,因此在任何时候都可能出错,从而导致无法正确关闭数据库连接。为了解决这个问题,我们通过将代码封装在try{}和finally{}代码块中,这样即使出现问题并引发异常finally{}代码块中的代码也始终会执行,数据库就可以在任何情况下实现安全关闭。修改后的代码如下:

package com.example;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Application {
    private static Connection connection;
    public static void main(String[] args) throws SQLException {
        try {
            openDatabaseConnection();
        } finally {
            closeDatabaseConnection();
        }
    }
    private static void openDatabaseConnection() throws SQLException{
        System.out.println("Opening database connection...");

        connection = DriverManager.getConnection(
                "jdbc:mariadb://localhost:3306/jdbc_demo",
                "user", "password"
        );

        System.out.println("Connection valid: " + connection.isValid(5));
    }
    private static void closeDatabaseConnection() throws SQLException {
        connection.close();
        System.out.println("Connection valid: " + connection.isValid(5));
    }

}

3.点击运行

在这里插入图片描述

如有不妥之处请留言指正。相互学习,共同进步!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java 连接MariaDB 的相关文章

随机推荐

  • 算法竞赛中,sort()函数的常见用法。

    知识点 虽然我们已经学习了诸如快速排序 桶排序 基数排序 插入排序 选择排序等众多的排序算法 xff0c 但在算法竞赛中 xff0c 如需要进行排序 xff0c 我们一般 不会去重复造轮子 xff0c 即去实现某种排序算法后再使用 xff0
  • Android 打印调用栈的方法

    1 Java层调用栈打印 xff1a xff08 1 xff09 打印本地调用堆栈 Log i TAG Log getStackTraceString new Throwable 打印本地调用堆栈 xff08 2 xff09 打印远程调用堆
  • 利用gnome美化Ubuntu18.04

    先上最终的效果图 xff1a 首先需要安装gnome软件 sudo apt install gnome tweak tool 安装好后在terminal中输入 gnome tweaks 进入优化软件 软件里自带有一些主题和图标等 xff0c
  • 软件项目管理0712:干系人管理

    软件项目管理0712 xff1a 干系人管理 xff08 软件项目管理中最复杂的内容 xff09 这个题目是个大课题 xff0c 只谈一些自己的经验 xff0c 并不完整 xff0c 有很多缺漏 xff0c 在以后的工作中慢慢的完善 项目
  • 【JVM学习笔记】JVM内存区域定义与内存结构

    目录 定义和说明JVM内存区域的定义内存区域说明堆说明非堆 方法区说明堆栈的区别HotSpot虚拟机 JVM线程独占内存程序计数器 xff1a Program Counter RegisterJava虚拟机栈 xff1a Java Virt
  • 【自媒体营销神器】一键自动下载短视频并分发至长视频平台脚本开源展示

    项目语言 xff1a Python 开发历时 xff1a 一个月 为什么要开源 xff1a Those whom God wishes to destroy he first makes mad 用到的库 xff1a 首先是项目展示环节 x
  • 搞懂bashrc

    1 bashrc是什么 shell 是给电脑发送指令的地方 xff08 命令行 xff09 xff0c bash 是 Bourne Again Shell 的缩写1 我们在 Ubuntu 打开的命令行界面一般都是 bash xff0c 每次
  • powershell 解压RAR文件(简易版)

    01 前言 为啥要写这个 xff0c 因为可能有些特殊的环境无法使用RAR的解压软件 xff0c 因而动手找了一个库然后写了这个脚本 xff0c 希望有帮助 02 正文 准备 xff1a 第三方的dll SharpCompress xff0
  • 改变 Gnome Terminal 的默认大小

    Ubuntu 中 xff0c Gnome Terminal 的默认大小是 80列 xff0a 24行 xff0c 这是文本模式下的标准尺寸 对于图形界面环境而言 xff0c 默认的大小就不太适合了 如果不满意 Gnome Terminal
  • 主祷文

    主 祷 文 我们在天上的父 xff0c 愿人都尊你的名为圣 愿你的国降临 愿你的旨意行在地上 xff0c 如同行在天上 我们日用的饮食 xff0c 今日赐给我们 免我们的债 xff0c 如同我们免了人的债 不叫我们遇见试探 xff0c 救我
  • 一个失败的程序员

    一个失败的程序员 第一次写博客 xff0c 看了别人的很久 xff0c 也想了很久 xff0c 觉得无论文笔有多不好 xff0c 分享的内容有多糟糕 xff0c 都应该有这个勇气迈出第一步 xff0c 记录生活 抒写回忆 xff0c 等到回
  • H5新增标签及Tab切换水平垂直居中

    1 结构标签 xff08 1 xff09 section xff1a 独立内容区块 xff0c 可以用h1 h6组成大纲 xff0c 表示文档结构 xff0c 也可以有章节 页眉 页脚或页眉的其他部分 xff1b xff08 2 xff09
  • android构建工具gradle基础知识

    1 gradle概述 gradle是一个开源的通用构建工具 xff0c 可以构建几乎任意类型的产物 针对不同的场景 xff0c gradle使用不同的插件和DSL申明配置来共同完成构建 gradle有如下几个特点 xff1a 高性能基于jv
  • Kali linux 2016.2(Rolling)安装之后的常用配置

    转发 xff1a https www cnblogs com zlslch p 6047913 html 前言 使用默认的Kali Linux设置来学习是可以的 xff0c 但是我们通常要修改系统的一些基本设置 xff0c 来最大化使用Ka
  • JAVA版本:使用二分法查找数组中的数据

    使用二分法查找数组中的数据 xff1a 分析 xff1a 二分法查找适用于数据量较大时 xff0c 但是数据需要先排好顺序 主要思想是 xff1a xff08 设查找的数组区间为array low high xff09 xff08 1 xf
  • BlaBlaCar是如何解决四大挑战的?

    BlaBlaCar 是世界领先的长途拼车服务 xff0c 将汽车司机与乘客联系起来 BlaBlaCar 在 22 个国家 地区拥有 6000 万会员 xff0c 每季度有超过 1800 万旅客 xff0c 正在创建一个全新的 以人为本的旅行
  • K8S案例01

    一个简单的例子 Java Web应用 xff1a 是一个运行在 tomcat里的 Web App 如图1 1所示 xff0c JSP页面通过JDBC直接访问 MYSQL数据库并展示数据 为了演示和简化的目的 xff0c 只要程序正确连接到了
  • 【Ubuntu】修改ubuntu和windows双系统启动顺序

    目录 一 问题描述二 背景知识1 GRUB是什么2 GRUB配置文件3 96 etc default grub 96 主配置文件 二 问题分析三 解决方案1 修改grub主配置文件2 更新grub配置文件 一 问题描述 Ubuntu 43
  • OpenShift简介

    文章目录 OpenShift简介1 OpenShift是什么 xff1f OpenShift与K8S的区别1 应用部署2 应用管理3 节点配置4 安全性 2 为什么要用OpenShift xff1f 3 OpenShift的版本4 Open
  • Java 连接MariaDB

    Java应用程序连接MariaDB数据库 在本文中我们将了解到什么是JDBC驱动程序以及如何打开和安全地关闭MariaDB数据库连接 什么是 JDBC 驱动程序 xff1f JDBC 是一种 API规范 xff1a 一组定义该技术可以做什么