01 天天写CRUD,你知道你的系统是如何跟MySQL打交道的吗?

  • Post author:
  • Post category:mysql




1、MySQL驱动

我们要在Java系统中去访问一个MySQL数据库,必须得在系统的依赖中加入一个MySQL依赖,
有了这个驱动才能跟MySQL数据库建立连接,然后执行各种各样的SQL语句。
加入这个maven配置,就引入了一个MySQL驱动。
这里的mysql-connector-java就是面向Java语言的MySQL驱动。

在这里插入图片描述

我们要访问数据库,必须得跟数据库建立一个网络连接,这个答案就是MySQL驱动,他会在底层跟数据库建立网络连接,有了网络连接,才能去发送请求给数据库服务器。

在这里插入图片描述



数据库连接池

【1】一个Java系统只会跟数据库建立一个连接吗?假设我们用Java开发了一个Web系统,
部署在tomcat上的。那么Tomcat肯定是有多个线程来并发的处理同时接收到的请求的。
如果Tomcat中的多个线程并发处理多个请求的时候,都要去抢夺一个连接去访问数据库的话
,那效率是很低下的。
【2】那么如果Tomcat中的每个线程在每次访问数据库的时候,都基于MySQL驱动去
创建一个数据库连接,然后执行MySQL语句,然后执行完之后再销毁这个数据库连接。
这样也是非常不好的,因为每次建立一个数据库连接都很耗时,好不容易建立好了连接,
执行完了SQL语句,你还把数据库连接给销毁了,下一次再重新建林数据库连接,
效率是很低下的。
【3】所以一般我们用一个数据库连接池,也就是说在一个池子里维持多个数据库连接池,
让多个线程使用里面的不同的数据库去执行SQL语句。然后执行完SQL语句之后,
不要销毁这个数据库连接。而是把连接放回池子里,后续可以继续使用。

在这里插入图片描述



MySQL数据库连接池

    很多系统要与MySQL数据库建立多个连接,那么MySQL也必然要维护与系统之间的多个连接,所以MySQL架构体系中的第一个环节,就是连接池。



版权声明:本文为qq_35763714原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。