开发者社区 > 数据库 > 正文

MyBatis主要分为哪三层?

MyBatis主要分为哪三层?

展开
收起
vncamyi27xznk 2021-12-24 15:29:21 1088 0
1 条回答
写回答
取消 提交回答
  • image.png MyBatis主要分为三层:接口层,核心层与基础层。 1.接口层 是通过提供的API作为数据库进行增/删/改/查,都是MyBatis的API。 2.核心层 是SQL预处理、SQL执行、结果映射。 1)SQL预处理:是对代码里的变量进行绑定,以及动态SQL生成; 2)SQL执行:是把生成好的SQL,通过JDBC驱动,传到对应的DB里执行,而且要负责网络通信的部分; 3)结果映射:是把数据库返回的结果从关系型数据转换成Java对象数据。 3.基础层 包括日志、事务管理、缓存、连接池、动态代理、配置解析。 1)日志:是做框架里面的日志输出以及SQL语句输出; 2)事务管理:是对 JDBC事物、数据库事物做管理; 3)缓存:能够把结果集缓存在JVM的内存内部。优点是比较快,缺点是会占用堆内存。有条件的情况下,建议用户多使用分布式缓存; 4)连接池:能够加速查询,提高性能; 5)动态代理:在用MyBatis编程时,核心是通过接口执行数据库查询。而Mapper接口本身是没有实现的,通过注解或者XML配置SQL语句,动态代理会在运行时生成代理,当调用Mapper接口时,转换成实际的SQL语句; 6)配置解析:因为MyBatis里面有存在大量配置,需要配置新模块,读取XML配置,并把它映射为配置属性。

    答复内容摘自《深入MySQL实战》,这本电子书收录开发者藏经阁 下载连接:https://developer.aliyun.com/topic/download?id=1167

    2021-12-24 16:25:40
    赞同 展开评论 打赏
问答分类:
问答地址:

数据库领域前沿技术分享与交流

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载