Ibatis很是簡單易學,Hibernate相對較複雜,門檻較高。java
Ibatis是SQL Mapping,是屬於扁平化的(基礎數據類型映射),而Hibernate是O/R Mapping,是立體的,能夠表達立體的對象繼承,聚合等等關係的。sql
當系統屬於二次開發,沒法對數據庫結構作到控制和修改,那Ibatis的靈活性將比Hibernate更適合數據庫
開發效率上: 二者應該差很少 。 可維護性方面: Ibatis更好一些。由於Ibatis的sql都保存到單獨的文件中。而Hibernate在有些狀況下可能會在java代碼中保存sql/hql。 運行效率: 在不考慮cache的狀況下,Ibatis應該會比hibernate快一些或者不少。app
對不一樣數據庫類型的支持,Hibernate要優於Ibatishibernate
對缺省的cache支持。Ibatis對缺省的cache支持不夠好,可是hibernate的cache支持其實也不是很好,並且 很複雜。對象