"MyBatis 简介及40道面试题与答案"

需积分: 0 1 下载量 87 浏览量 更新于2023-12-11 收藏 25KB DOCX 举报
MyBatis 是一个半 ORM(对象关系映射)框架,内部封装了 JDBC,使得开发者只需关注 SQL 语句本身,而无须花费精力去处理加载驱动、创建连接、创建 statement 等繁杂的过程。通过直接编写原生态 sql,程序员可以严格控制 sql 执行性能,灵活度高。MyBatis 可以使用 XML或注解来配置和映射原生信息,将 POJO映射成数据库中的记录,而避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 与传统的数据库访问技术相比,ORM 有以下优点: 1、基于 SQL 语句编程,相当灵活,不会对应用程序或者数据库的现有设计造成任何影响,SQL 写在XML里,解除sql与程序代码的耦合,便于统一管理;提供XML标签,支持编写动态SQL语句,并可重用; 2、与 JDBC 相比,减少了 50%以上的代码量,消除了 JDBC 大量冗余的代码,不需要手动开关连接; 3、很好的与各种数据库兼容(因为 MyBatis 使用 JDBC 来连接数据库,所以只要 JDBC 支持的数据库 MyBatis 都支持); 4、提供映射标签,支持对象与数据库的 O。 然而,MyBatis 同样存在一些缺点。首先,MyBatis 很难做到像 Hibernate 那样的级联操作;其次,MyBatis 需要程序员手写 SQL,这在某种程度上增加了开发的工作负担;另外,MyBatis 本身并不提供对象关系映射,而是依靠开发者自己维护 SQL 语句与 Java 对象的映射,这也可能导致一些重复劳动。 在实际工作中,MyBatis 往往和 Spring 框架结合使用,通过 Spring 的注解来管理 SQL 会话工厂和 mapper,来简化 MyBatis 的配置和使用。在 MyBatis 的使用过程中,为了能够更好地掌握这一技术,开发者需要深入了解 MyBatis 的各个方面,掌握 MyBatis 的使用技巧以及常见问题的解决方案。为了帮助开发者更好地掌握 MyBatis,以下列举了 40 道 MyBatis 面试题以及答案供参考,希望对大家有所帮助。