[MYSQL] 程序是如何与MYSQL 数据库连接起来的(一)

框架与中间件 框架与中间件 8072 人阅读 | 0 人回复

日常开发中,我们主要是开发业务端代码,对于数据库,主要就是CRUD,其他的可能还有一些基本的数据库维护等。

应用-数据库模型

image.png

那么,我们的SQL到底是如何与数据库交互的呢?

两个应用必然需要通信,否则无法执行SQL的执行以及结果的返回,而且对于已发布应用,通常应用于数据库也都是完全不会在一台计算机上,更是需要网络进行通信。

驱动程序

只要进行应用开发,涉及到数据库,必然需要用到数据库驱动程序。

这就是应用与数据库的桥梁。

不仅仅是java对于其他语言,对于其他语言也都有可用的驱动程序,用来对MYSQL进行访问。

image.png

        <!-- Mysql Connector -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

之前还会有一个形如 <version>xxxx</version>

用来标识版本号,现在大都使用springboot ,版本号容易管理,此处就不需要额外写了

数据库连接池

对于数据库连接的创建和销毁,是比较消耗资源的,所以池化技术在这个场景下很适用,所以也就必然有了数据库连接池,连接池负责数据库连接的管理,其中包括:调度分配、创建、销毁等。

image.png

所以这就是我们为什么开发应用的时候,除了一些必须要的配置,还需要引入数据库驱动以及数据库连接池的原因,这是这种业务架构的刚需:必须要数据库驱动,也必须不能直接创建连接,那样会浪费性能。

而对于MYSQL自身来说,他也需要面对外面很多的连接,他自身其实也是有池化连接的。

image.png

常见数据库连接池

https://www.crazybytex.com/thread-175-1-1.html

关于java数据库连接池的一些应用,可以参考上文,有简单介绍到一些常见的数据库连接池,常见的数据库连接池有DBCP,C3P0,Druid等等,作为java应用开发者,必然需要和他们打交道。

小结

本文主要是介绍了应用-数据库模型,以及简单介绍了连接池的重要性。

common_log.png 转载务必注明出处:程序员潇然,疯狂的字节X,https://crazybytex.com/thread-225-1-1.html

关注下面的标签,发现更多相似文章

文章被以下专栏收录:

    黄小斜学Java

    疯狂的字节X

  • 目前专注于分享Java领域干货,公众号同步更新。原创以及收集整理,把最好的留下。
    包括但不限于JVM、计算机科学、算法、数据库、分布式、Spring全家桶、微服务、高并发、Docker容器、ELK、大数据等相关知识,一起进步,一起成长。
热门推荐
海康摄像头接入 wvp-GB28181-pro平台测试验
[md]### 简介 开箱即用的28181协议视频平台 `https://github.c
[CXX1300] CMake '3.18.1' was not
[md][CXX1300] CMake '3.18.1' was not found in SDK, PATH, or
[若依]微服务springcloud版新建增添加一个
[md]若依框架是一个比较出名的后台管理系统,有多个不同版本。