Mybatis
Mybatis是一个持久层框架,支持普通SQL查询,存储过程和高级映射
Mybatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的查询
Mybatis使用简单的XML或注解用于配置和原始映射,将接口和java的POJO映射成数据库中的记录
和hibernate的共同点:
1.从配置文件中得到session工厂
2.通过工厂生成session
3.在session中完成相应的操作
4.在java对象和数据库直接有做mapping的配置文件,不过mybatis是通过个
5.都支持JDBC和mybatis都支持JDBC和JTA事务处理
Mybatis的优势
Mybatis自动和线程绑定
Mybatis可以更为细致的SQL优化,可以减少查询字段
Hibernate的优势
Hibernate的DAO层开发比较简单,不用SQL语句
Hibernate的缓存一级、二级、查询缓存
Hibernate的移植性好,独立于数据库
所以:hibernate功能强大,数据库无关性好,O/R映射能力强
但为啥要用呢?
1.比较小,没那么庞大
2.比较轻量,比如导包一个就好
3.完全使用接口,没有DAO
4.根据XML自动生成DAO对象