- 什么是MyBatis? MyBatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL本身,不需要花费精力去处理加载驱动,创建连接、创建statement等复杂的过程,程序员直接编写原生态SQL,可以严格控制sql执行性能,灵活度高。Mybatis可以使用xml或者注解来配置和映射原生信息,将pojo映射成数据库中记录,避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。通过xml文件或者注解的方式将要执行的各种statement配置起来,并通过java对象和statement中sql的动态参数进行映射生成最终将结果映射为java对象并返回。
- MyBatis的优点:基于SQL编程,相当灵活,不会对应用程序或者数据库的现有设计造成任何影响,SQL写在xml里面,解除sql与程序代码的耦合,便于统一管理;提供xml标签,支持编程动态sql语句,并且可以复用。与JDBC相比,减少了50%以上的代码量,消除了JDBC大量冗余的代码,不需要手动开关连接。很好的与各种数据库兼容(因为MyBatis使用JDBC来连接数据库,所以只要JDBC支持的数据库MyBatis都支持)。便于与Spring很好的集成。提供映射标签,支持对象与数据库的ORM字段关系映射;提供对象关系映射标签,支持对象关系组件维护。
- MyBatis的缺点:SQL语句的编写工作量较大,尤其是字段多、关联表时候,对于开发人员编写SQL语句有一定的要求。SQL语句依赖数据库,导致数据库移植性能差,不能随意更换数据库。
- MyBatis框架适合场合:MyBatis专注SQL本身,是一个足够灵活的DAO层的解决方案
MyBatis面试整理内容
关注
打赏