首页 > 其他 > 详细

MyBatis 数据源的原理和机制

时间:2020-09-30 10:09:17      阅读:44      评论:0      收藏:0      [点我收藏+]

回顾JDBC

JDBC访问数据库流程
  1. 加载驱动
  2. 获取Connection连接对象(消耗性能)
  3. 获取PrepareStatement对象
  4. 执行SQL语句
  5. 获取结果集
  6. 关闭Connection连接对象
存在问题

频繁访问数据库时,由于反复创建和释放Connection连接对象,导致系统性能下降(特别在高并发情况下)

数据源的概念

数据源是一种提高 JDBC 访问数据库性能的常规手段

数据源的原理

数据源会负责维持一个数据库连接池,连接池中会一次性地提前创建多个 Connection 连接对象,并把这些Connection连接对象保存在连接池中。

  • 当程序需要进行数据库访问时,无须进行重新获取 Connection 连接对象,而是从连接池中取出一个空闲的Connection连接对象。

  • 当程序使用 Connection 连接对象访问数据库结束后,无须关闭 Connection 连接对象,而是归还给数据库连接池中。通过这种方式,就可以避免频繁访问数据库时性能下降的问题

  • 当 Connection 连接对象耗尽时,连接池会批量创建一批 Connection 连接对象存放到连接池中。当连接池中有长期未使用的 Connection 连接对象,则会自动将其释放,以节省内存空间。

技术分享图片

数据源的本质

数据源相比JDBC而言,优点在于大大提高了数据访问的性能,缺点是需要占用更多的内存空间,本质上是一种以空间换时间的性能优化思想。

MyBatis 数据源的原理和机制

原文:https://www.cnblogs.com/binbingg/p/13752936.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!