1. Mybatis 和 Hibernate 有什么区别?
Mybatis 是半自动的 ORM 的框架,Hibernate 是全自动的,所谓半自动,就是不会自动查询出关联对象,需要自己写 SQL。
2. Mybatis 有什么优缺点?
简单轻量,学习成本低,SQL 与业务分离,便于优化,但是对开发人员的 SQL 功底要求较高,且与数据库耦合,数据库移植性较差。
3. 说一说 Mybatis 的编程步骤。
创建 SqlsessionFactory;
创建 SqlSession;
通过 SqlSession 执行数据库操作;
通过 SqlSession 提交或回滚事务;
关闭 SqlSession。
4. 调用接口为什么能执行 mapper 中的 SQL?
调用接口的时候会生成代理对象,代理根据接口全限定名找到对应 mapper 中的对应标签,从而执行对应的 SQL。
5. 什么叫预编