Mybatis工作原理:
Mybatis应用程序根据 xml配置文件创建SQLSessionFactory,
SQLSessionFactory再根据配置文件与java代码的注解,获取一
个SQLSession。SQLSession包含了执行所需要的所有方法,可以
通过SQLSession实例直接运行映射的SQL语句,完成对数据的增删
改查和事物提交等,用完之后关闭SQLSession。
Mybatis的优缺点:
优点:
1、简单易学:
mybatis本身就很小且简单,没有任何第三方依赖,最简单安装
只要两个jar文件+配置几个SQL映射文件。易于学习,易于使用,
通过文档与源代码,可以比较完全的掌握它的设计思路和实现。
2、灵活:
mybatis不会对应用程序或者数据库的现有设计强加任何影响。
SQL写在xml里,便于统一管理和优化。通过SQL基本上可以实现
我们不使用数据访问框架可以实现的所有功能,或许更多。
3、解除SQL与程序代码的耦合:
将业务逻辑和数据访问逻辑分离,使系统的设计更清晰,更易维护,
更易单元测试。SQL和代码的分离,提高了可维护性。
4、提供映射标签,支持对象与数据库的orm字段关系映射,支持对象
关系组建维护。
5、提供xml标签,支持编写动态SQL。
缺点:
1、编写SQL语句时工作量很大,尤其是字段多、关联表多时,更是如此。
2、SQL语句依赖于数据库,导致数据库移植性差,不能更换数据库。