1、什么是 MyBatis?
答: MyBatis 是一个可以自定义 SQL、存储过程和高级映射的持久层框架。
2、讲下 MyBatis 的缓存
答: MyBatis 的缓存分为一级缓存和二级缓存,一级缓存放在 session 里面,默认就有,二级缓存
放在它的命名空间里,默认是不打开的,使用二级缓存属性类需要实现 Serializable 序列化接口
(可用来保存对象的状态),可在它的映射文件中配置<cache/>
3、 Mybatis 是如何进行分页的?分页插件的原理是什么?
答:
1)Mybatis 使用 RowBounds 对象进行分页,也可以直接编写 sql 实现分页,也可以使用 Mybatis
的分页插件。
2)分页插件的原理:实现 Mybatis 提供的接口,实现自定义插件,在插件的拦截方法内拦
截待执行的 sql,然后重写 sql。
举例: select * from student,拦截 sql 后重写为: select t.* from (select * from student) t limit
0, 10
4、简述 Mybatis 的插件运行原理,以及如何编写一个插件?
答:
1) Mybatis
36道面试常问的MyBatis面试题!
最新推荐文章于 2024-04-15 09:48:19 发布
本文详细介绍了MyBatis的面试常见问题,涵盖MyBatis的作用、缓存机制、分页、插件原理、动态SQL、#{}与${}的区别、与Hibernate的对比、优点等方面,帮助理解MyBatis的工作方式和优化策略。
摘要由CSDN通过智能技术生成