一、Mybatis的三大优点
1、不屏蔽SQL,意味着可以更为精确地定位SQL语句,可以对其进行优化和改造,这有利于互联网系统性能的提高,符合互联网需要性能优化的特点。
2、提供强大、灵活的映射机制,方便Java开发者使用。提供动态SQL的功能,允许我们根据不同条件组装SQL,这个功能远比其他工具或者Java编码的可读性和可维护性高得多,满足各种应用系统的同时也满足了需求经常变化的互联网应用的要求。
3、在Mybatis中,提供了使用Mapper的接口编程,只要一个接口和一个XML就能创建映射器,进一步简化我们的工作,使得很多框架API在Mybatis中消失,开发者能更集中与业务逻辑。
二、Mybatis的四大核心组件
1)SqlSessionFactoryBuilder (构造器):它会根据配置或者代码来生成SqlSessionFactory,才用的时分步构建的Builder模式。
2)SqlSessionFactory(工厂接口):依靠它来生成SqlSession,使用的是工厂模式。
3)SqlSession(会话):一个既可以发送SQL执行返回结果,也可以获取Mapper的接口。在现有的技术中,一般我们会让其在业务逻辑代码中“消失”,而使用Mybatis提供的
SQL Mapper接口编程技术,它能提高代码的可读性和可维护性。
4)SQL Mapper(映射器):Mybatis新设计存在的组件,他有一个Java接口和XML文件(或注解)构成,需要给出对应的SQL和映射规则。它负责发送SQL去执行,并返回结果。