Mybatis原理--总纲

目前业界大多喜欢用Mybatis作为操作数据库的ORM框架,Mybatis框架学习起来也比较简单,开发的时候也比较方便,也符合目前的面向接口式编程。

Mybatis的框架设计

  • 数据的处理

对数据的处理可以分为两部分 根据传入的参数动态的拼装sql对sql执行的结果封装成 JavaBean

参数映射指的是对于java 数据类型和jdbc数据类型之间的转换,这里有包括两个过程:查询阶段,我们要将java类型的数据,转换成jdbc类型的数据,通过 preparedStatement.setXXX() 来设值;另一个就是对resultset查询结果集的jdbcType 数据转换成java 数据类型
此处可以参考文章 Mybatis原理--动态生成SQL

  • SQL语句的执行以及封装查询结果集成List

动态SQL语句生成之后,MyBatis 将执行SQL语句,并将可能返回的结果集转换成List 列表。MyBatis 在对结果集的处理中,支持结果集关系一对多和多对一的转换,并且有两种支持方式,一种为嵌套查询语句的查询,还有一种是嵌套结果集的查询

框架支撑层

  • 事务管理机制
    事务管理机制对于ORM框架而言是不可缺少的一部分,事务管理机制的质量也是考量一个ORM框架是否优秀的一个标准,对于数据管理机制我已经在我的博文《Mybatis原理--事务管理》 中有非常详细的讨论,感兴趣的读者可以点击查看。

  • 连接池管理机制
    由于创建一个数据库连接所占用的资源比较大, 对于数据吞吐量大和访问量非常大的应用而言,连接池的设计就显得非常重要,对于连接池管理机制我已经在我的博文《Mybatis原理——数据源和连接池》 中有非常详细的讨论,感兴趣的读者可以点击查看。

  • 缓存机制
    为了提高数据利用率和减小服务器和数据库的压力,MyBatis 会对于一些查询提供会话级别的数据缓存,会将对某一次查询,放置到SqlSession**中,在允许的时间间隔内,对于完全相同的查询,MyBatis 会直接将缓存结果返回给用户,而不用再到数据库中查找。可以参考Mybatis原理--缓存机制(一级缓存) 和 Mybatis原理--缓存机制(二级缓存)

以上就是《Mybatis原理--总纲》的全部内容,如有不正确的地方,请读者指正,互相学习,共同进步,谢谢。

Mybatis原理--总纲_第1张图片
扫码关注公众号:java之旅

你可能感兴趣的:(Mybatis原理--总纲)