美文网首页
说说我对mybatis框架的理解

说说我对mybatis框架的理解

作者: 大王叫我来巡山007 | 来源:发表于2018-07-31 15:08 被阅读0次

1) 首先,框架由一系列的jar组成,其本质是对jdk的拓展,也是一组程序的集合.(类,接口等等的集合.),是解决某一领域的最佳实践,而mybatis就是解决数据访问层的最佳实践.(what)

2)为什么会有mybatis框架呢?

(a)不用mybatis框架,我们通过Java代码访问数据库时,一般都是这些步骤:加载注册驱动,获取连接对象,获取语句对象,执行sql语句,释放资源.通过java代码,来访问数据库,就一定需要这五步,这也是Java中jdbc的规范,只能通过这种方式.所以,无论是什么数据库,都必须遵守这个规范去封装.(而本身规范就好比一个接口,不关注实现的细节.)所以,这也是为什么mysql数据库有mysql的驱动包,oracle有oracle的驱动包.在java.sql包中,就是jdbc的api.(其本身,提供了很多接口,自身也实现了,这些接口.),而各大数据库厂商,根据java.sql的接口,去实现,也就造成了不同厂商,有着不同的驱动包.

(b)传统的jdbc,与数据库建立连接时,获取连接对象,这是每一次都会和数据库建立连接,是特别消耗资源的,那有没有解决的方式,?有,那就是连接池啦,javax.sq包,本身有连接池接口,pooledConnection但是很遗憾的是,没有提供实现.(埋下伏笔).在获取语句对象时,增删改的代码几乎一模一样,而查询单个和查询多个也几乎一模一样.,传统的jdbc存在大量代码重复.关闭资源也是.在增删改中,仅仅是sql语句不同,哪需要如何抽取呢?而且,在Java代码中,存在大量的sql语句,这本身就违背了Java语言的纯净性以及优雅性,同时,当需要改动时,需要去Java代码中修改sql语句,也会造成高的耦合性,正是由于这种原因,mybatis框架应运而生.

3)针对,,在Java代码中,存在大量的sql语句,这本身就违背了Java语言的纯净性以及优雅性,同时,当需要改动时,需要去Java代码中修改sql语句,也会造成高的耦合性.mybatis引入配置文件,解决耦合性问题.

针对,javax.sq包,本身有连接池接口,pooledConnection但是很遗憾的是,没有提供实现.提供连接池.mybatis自身已经存在连接池,如果需要可以引入DBCP,Druid等连接池.

也正是mybatis框架封装大量重复的代码,使程序员不用重复造轮子,而重点关注业务逻辑,提高开发效率.

相关文章

  • 说说我对mybatis框架的理解

    1) 首先,框架由一系列的jar组成,其本质是对jdk的拓展,也是一组程序的集合.(类,接口等等的集合.),是解决...

  • Spring

    一、对SSM的理解 ①ssm框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模...

  • Java高并发秒杀系统API之项目介绍

    在学习了Spring、SpringMVC、Mybatis这3个框架后,为了加深对相关框架整合和知识的理解掌握,参考...

  • 阿里最新38道Java面试题解析(MyBatis+消息队列+Re

    一、谈谈你对 MyBatis 的理解? 1. Mybatis是一个半ORM(对象关系映射)框架,它内部封装了 JD...

  • 图灵学院Java架构师-VIP-手写MyBatis框架

    最近复习了Mybatis,就想用自己的理解手写mybatis框架,Mybatis源码的核心是jdk动态代理和jdb...

  • Mybatis快速入门

    Mybatis 学习内容 Mybatis框架的简单入门 Mybatis框架基本的使用 Mybatis框架的深入和多...

  • 彻底搞懂JDBC的运行过程

    前几天笔者发布了博客手写mybatis彻底搞懂框架原理。为了帮助初学者更好理解mybatis框架,这次讲解一下Ja...

  • Mybatis(一)

    基于Mybatis的学习 之前接触框架很少,这次对Mybatis的学习让我有了认识到自己学习的不足。 很多框架的应...

  • 自我理解Mybatis框架

    注意: 配置类中的大的Map中的String指的是寻找Mapper的唯一标识

  • MyBatis

    一、理解什么是MyBatis?MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。 My...

网友评论

      本文标题:说说我对mybatis框架的理解

      本文链接:https://www.haomeiwen.com/subject/dwlhvftx.html