优点:
1.基于SQL语句进行编程,相当灵活,但是又不会对应用程序或者数据库有任何的影响。sql单独写,解除sql和程序代码的耦合,便于统一管理。
2.与JDBC相比,减少了50%以上的代码量,消除JDBC大量冗余的代码,不用手动开关数据库内连接。
3.可以很好和各种数据库兼容(因为Mybatis是通过JDBC来连接数据库的,只要JDBC支持的数据库Mybatis都支持)。
4.能与spring很好的集成
5.提供映射标签。
缺点:
1.sql语句的编写工作量较大,尤其是字段多,关联表多时,对开发人员的sql编写功底要求较高。
2.sql语句依赖于数据库,导致数据库移植性较差,不能随意更换数据库。