MyBatis的简单入门学习

一个新知识开始是最难学的.(万事开头难)

MyBatis大体分三层,接口层,数据处理层,基础支撑层.

其中接口层不是java中的那个interface,而是框架和程序员之间的对接.一个API,程序员可直接调用的东西.

数据查询,数据新增,这几个,就是增删改查了.select ,insert ,update,delete,(获取配置接口待更新)

总之接口层是增删改查~

而接口层这些功能是调用了数据处理层,比如传进一个对象数据,对象数据需要进行打散解析,就进入参数映射

进行各种处理,比如新建一个用户,我们需要包装成对象,User1, 而传入后,需要获取单个的值进行分解,例如User1.getUserName(), User1.getUserAge()这种老式的对象获取方法.(因为不这样的话,数据库层面可能做不了这方面的解析,就只有在这里解析了)->数据处理层.

 

在MyBatis中,我们的SQL写在配置文件中,我们需要从配置文件中读取我们要执行的SQL语句,(看数据处理层的第一个蓝色箭头)

之后这些解析的对象User1的解析数据就放入了SQL解析栏目,也就是将接口层传入的对象或其他数据通过了下面的处理层进行

解析后,放入了配置文件中的SQL语句!(形成了 statement 了~)

 

再然后,第二个蓝色箭头,就要执行statement SQL语句了. Executor是执行器.(在MyBatis源码中)

最终在执行后(第三个蓝色箭头后),框架自动封装一个查询后的数据对象. 也就是你设置好的xxx.xml的mapper中的结果类型resultType.

MyBatis通过这个类型自动将SQL执行后的数据封装成为这个类型的对象.(方便了很多,不用在手工的getString("user_name"), getInt("user_age")...等那样获取了!💗)

PS: JAVA连接各种数据库的配置文件写法

 

最后的基础支撑层,在上面的那些执行查询或新增及获取结果对象数据操作时,需要连接数据库吧?当然!

所以基础支撑层提供了这些支持,如连接管理(数据库连接,也就是老式的getConnection().).

且数据库操作也需要事务处理->事务管理.

配置加载,即是SQL语句的配置文件,properties(数据库连接四要素:[驱动][URL][username][password]).都属于配置文件.

缓存管理->查询操作要通过缓存(节省数据库开销),具体MyBatis缓存机制看这个: MyBatis缓存管理博客摘录

支持层4种功能是需要首先配置好框架的.也就是图片最下面的配置框架.

 

下一篇为MyBatis配置框架随笔.

谢谢观看!

 

posted @ 2018-08-08 21:45  ukyo--君君小时候  阅读(201)  评论(0编辑  收藏  举报