mybatis是什么?
mybatis是一个半自动的ORM持久层框架,内部封装了JDBC,mybatis是通过XML或注解的方式将需要执行的statement配置,支持定制化sql,存储过程以及高级映射。
mybatis的优点:
1.简单易学,容易上手(相比较于hibernate),基于sql编程。
2.JDBC相比减少50%以上的代码量,不需要手动开启连接。
3.与各种数据库兼容。(因为他与JDBC连接数据库)。
4.提供了许多第三方插件。(分页插件,逆向工程)。
5.能够与spring很好的集成。
6.mybatis相当灵活,不会对现有程序影响,sql写在XML中,从程序代码中彻底分离出来,解除了sql与程序耦合,重用
7.提供XML标签,支持编写sql语句。
8.提供映射标签,支持对象与数据库的orm字段关系映射。
mybatis的缺点:
1.框架比较简陋,功能尚有缺失,虽然简化了数据绑定代码,但是整个底层数据库查询还得自己写,工作量大,不易修改。
2.二级缓存机制不佳。
3.sql语句依赖数据库,导致数据库移植性差,不能随意更换数据库。
mybatis与hibernate的区别比喻:
mybatis:机械工具,使用方便,拿来就用,但工作还要自己来作,不过工具是活的,怎么用有我自己来来决定。
hibernate:智能机器人,但研究它(学习,熟练度)的成本很高,工作可以摆脱他了,但权限于他能做的事。