为了账号安全,请及时绑定邮箱和手机立即绑定

java中的orm框架

java中的orm框架

四季花海 2018-07-21 16:27:46
很久没做java后台了,都不知道java发展的怎么样了。现在ORM框架主流还是hibernate嘛,ibtais和mybatis哪个用的多点。请大牛指点补充:mybatis是ibatis的升级,是不是说明ibatis被淘汰了,我司好像还是用ibtais,我想从这两个中选择一个学习,大神们请推荐。
查看完整描述

4 回答

?
慕斯卡1413621

TA贡献6条经验 获得超0个赞

Hiberante 面向对象的ORM,学习成本比较高。 比较多的意见说是要想对hibernate精通比较难,学习成本较高。

Mybatis 半自动orm框架,需要自己写sql, 方便sql与java代码分离。但简单的单表操作,也要写sql,程序员就有点难接受了。   另外, ibatis改名成mybatis,主要原因是ibatis从apache搬出来。一个软件即使没有改名也是可以不断更新的。

Bee, 一个新的ORM框架, 同时具体Hiberante和Mybatis的优点。既可像Hibernate一样通过操作对象来操作数据库,也可以像Mybatis一样灵活写sql.

Bee是一种开发速度和开发成本都不比php差的Java ORM框架,

而且它的编码复杂度是O(1),即用了Bee,你可以不用另外再写dao代码。

Bee+Spring+SpringMVC  可以作为实现后端的Java Web编程组合。


查看完整回答
反对 回复 2019-05-21
?
千万里不及你

TA贡献1784条经验 获得超9个赞

结论如图。
但无论如何,仅仅就使用ORM框架而言,楼主大可放心去学习,不用担心时间成本的问题,不会占太多时间的。

https://img1.sycdn.imooc.com//5b573241000159ab07630468.jpg

查看完整回答
反对 回复 2018-07-24
?
慕后森

TA贡献1802条经验 获得超5个赞

hibernate大概还是主流吧,mybatis是ibatis的升级啊,自然好用些,还支持注解!

查看完整回答
反对 回复 2018-07-24
?
呼唤远方

TA贡献1856条经验 获得超11个赞

hibernate和ibtas(mybatis)是为了解决不同问题而出现的。

hibernate是从对象的角度去看数据库,所有数据库层面的表在hibernate看来都是一个个对象,若是对象自然就有一对多,一对一等等关系。hibernate在对象层面完全封装了数据库层面的操作。所以它是一完整的ORM工具。最大的好处就是开发人员能通过很少的代码量就完成数据库层面的操作,大大提示了开发效率,不需要去写很多JDBC代码。

但是数据库毕竟不能只当做对象来看来,它有自己的组织方式,有自己的索引机制,当你数据库量到一定程度的时候,hibernate就会相当吃力,因为当通过对象的方式来组织对象之间的关系,就会导致映射到数据库层面的SQL会非常的复杂。

恰恰这种复杂并不是数据库执行引擎所期待的时候,就会导致各种慢查询,故后来出现了ibtas(mybatis)这种半自动化的方式来解决性能问题。同数据库层面的交互还是通过具体的SQL,但是提供了一种机制来简化开发的工作量,也就是写JDBC的工作。

现在的主流基本还是ibtas(mybatis),特别是对于互联网应用来说,hibernate太过重了!


查看完整回答
反对 回复 2018-07-24
  • 4 回答
  • 0 关注
  • 1607 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信