我们对于数据的概念一般都是停留在那个阶段?我想大部分人一想起数据都会不经意地想起文档,纸质版文件等这些存储方式。然后才是现在存储在网络平台的数据。纸质版的数据只存储最重要的数据,十几年整理出来的重要数据可能就只有三四个书架那么大的纸质版数据。但是互联网数据就不止这一点点了,可能一个大的网络平台一秒产生的数据以打印形式拿出来存储足以抵得上三四个书架了。
在这样坏境下,我们只有一个裸MySQL带给的增删改查是不足于应付怎么大的数据输入的。如果以这样的形式存储或者更改,不出一秒你的平台就要维护了,那怎么解决呢?当然是用一种工具来封装使用数据的增删改查。相当于一个铁,它可以拿来敲东西,砸物品或者其他用途,但是不管是效率上还是安全性上都不是一个好的选择,这时候就需要百炼成钢制作成自己想要的一款工具。如果你想劈柴就把这块铁制作成斧头,如果你想挖地就把它制作成锄头。MySQL操作数据库要想更好的操作数据就需要新技术的诞生,这时候Mybatis就相当于一把斧头。
Mybatis的理念就是让开发者使用百分之十的代码就可以实现数据的操作。提高开发的效率,能少动脑就少动脑,能少写一行代码坚决不多写一行代码这就是它出现的原因。
这个工具还是围绕着增删改查这四大步骤发展下去,毕竟离开这四个步骤我也不知道是个啥了?它运行的原理是这样子的,第一:读取Mybatis配置文件,这个相当于你要告诉它要怎么做,这里面就需要你配置一些信息来告知它。第二:加载配置文件,映射文件即SQL映射文件,这个文件内部就是一些SQL语句。简单点来说就是让它知道怎么执行你所走的数据操作。第三:构造会话工厂,通过Mybatis这个工具坏境等配置信息构造会话工厂SqlSessionFactory。第四:由会话工厂创建Sqlsession对象,这个相当于知道了SQL内部的所有方法,它已经知道怎么具备执行下去。
第五:Executor执行器:MyBatis底层定义了一个Executor接口来操作数据库,它将根据SqlSession传递的参数动态地生成需要执行的SQL语句,同时负责查询缓存的维护。
第六:MappedStatement对象:在Executor接口的执行方法中有一个MappedStatement类型的参数,该参数是对映射信息的封装,用于存储要映射的SQL语句的id、参数等信息。
第七:输入参数映射:输入参数类型可以是Map、List等集合类型,也可以是基本数据类型和POJO类型。输入参数映射过程类似于JDBC对preparedStatement对象设置参数的过程。
第八:输出结果映射:输出结果类型可以是Map、List等集合类型,也可以是基本数据类型和POJO类型。输出结果映射过程类似于JDBC对结果集的解析过程。
上面这些就是如何去处理数据的步骤,毕竟一个工具你要知道它是如何运行的,它使用过程是如何的,你只有了解它了才能更好地使用它。常说的:知己知彼,百战百胜。不管是什么,你第一时间肯定都是去认识它,知道它怎么来的,过程是如何的,这样才能为你所用。不知我说得对不对。