首页 > 代码库 > 我为什么不用hibernate而用ibatis

我为什么不用hibernate而用ibatis

入行前几年,一味追求框架SSH,使用并潜心研究。随着阅历和能力的增加,对系统的把控欲越来越强,近年已经甚少用Hibernate(也指JPA),我总结为以下几点原因:

1、Hibernate学习曲线陡峭、时间长。新手从入门到熟悉需要经历几个项目,少则几个月多则一两年。在项目开发周期越来越短,发布越来越频繁的现在,略显漫长,自己也没那个精力和心思去教。

2、Hibernate封装严密,好处是大家写起来都一样,但限制了可控性。我听到DBA跟我说:他喜欢ibatis,因为你们把sql写在xml里他能看到。

3、SQL敢称为language自然有其存在的价值和道理,计算机专业毕业生理论上都已掌握,这种群众基础咱不能浪费。

4、有项目需要DBA根据需要配置sql,没门,提需求程序员改,要不您也能去调Java代码。

没用Hibernate,我所接触的项目也没需要用纯JDBC来寻求性能,所以原来只做查询的ibatis入了咱的法眼。同时引用了spring-data-commons-core里的Pageable接口和PageRequest实现类、Page和PageImpl实现类,免得自己再写分页相关的代码。用spring-orm的SqlMapClientTemplate免得自己写模板代码。

我为什么不用hibernate而用ibatis