优点:
1、基于SQL语句编程,相当灵活,不会对应用程序或数据库的现有设计造成任何影响,SQL单独写,解析SQL与程序代码的耦合,便于统一管理。
2、与JDBC相比,减少了50%以上的代码量,消除了JDBC大量冗余的代码,不需要手动开关连接;
3、很好的与各种数据库兼容(因为mybatic使用JDBC来连接数据库,所有只要JDBC支持的数据库MyBatis都支持);
4、能够与Spring很好的集成;
5、提供了映射标签,支持对象与数据库ORM字段关系映射;提供了对象关系映射标签,支持对象关系组件维护。
缺点:
1、SQL语句的编写工作量较大,尤其当字段多,管理表多时,对于开发人员编写SQL语句的功底有一定要求。
2、SQL语句依赖于数据库,导致数据移植性差,不能随意更换数据库。