- 首先说一下大家都有了解的,一般人说Mybatis是半自动映射,而hibernate是全自动映射工具,然后就没有然后了。。。
- 那么,它们什么半自动,全自动到底是指啥呢???
- 先说一下mybatis,它是属于半自动的,我们需要自己对于SQL查询自己编写SQL语句,这就是为什么叫它半自动,Mybatis中还提供了将数据自动转换成实体类对象的功能,通过queryForList和queryForObject来获取查询的集合或单个对象。
- 而在hibernate中,它会自动帮我们写sql,这也是他被称为全自动的原因,而且hibernate相对Mybatis提供了更加负责的机制以及更加强大的功能,但是,hibernate的全自动机制,对于一些较为简单的sql查询确实能够简化我们的操作,但涉及到一些较为复杂的查询时,hibernate就显得力不从心,这个时候我们就选择Mybatis。
- 同时,Mybatis和Hibernate之间有一个共同点,就是都对jdbc api屏蔽了访问细节,jdbc api中掺杂了sqlhejava代码,较为复杂,二者都避免了这个缺点。。。
面试题心得--mybatis和hibernate的区别?
最新推荐文章于 2023-07-06 10:06:14 发布