很久没做java后台了,都不知道java发展的怎么样了。
现在ORM框架主流还是hibernate嘛,
ibtais和mybatis哪个用的多点。请大牛指点
补充:mybatis是ibatis的升级,是不是说明ibatis被淘汰了,我司好像还是用ibtais,我想从这两个中选择一个学习,大神们请推荐。
PHP中文网2017-04-17 13:05:43
hibernate和ibtas(mybatis)是為了解決不同問題而出現的。
hibernate是從對象的角度去看資料庫,所有資料庫層面的表在hibernate看來都是一個個對象,若是對象自然就有一對多,一對一等等關係。 hibernate在物件層級完全封裝了資料庫層面的操作。所以它是一完整的ORM工具。最大的好處就是開發人員能透過很少的程式碼量就完成資料庫層面的操作,大大提示了開發效率,不需要去寫很多JDBC程式碼。
但是資料庫畢竟不能只當做物件來看來,它有自己的組織方式,有自己的索引機制,當你資料庫量到一定程度的時候,hibernate就會相當吃力,因為當透過物件的方式來組織物件之間的關係,就會導致映射到資料庫層面的SQL會非常的複雜。
恰恰這種複雜並不是資料庫執行引擎所期待的時候,就會導致各種慢查詢,故後來出現了ibtas(mybatis)這種半自動化的方式來解決效能問題。同資料庫層面的互動還是透過具體的SQL,但提供了一個機制來簡化開發的工作量,也就是寫JDBC的工作。
現在的主流基本上還是ibtas(mybatis),特別是對於網路應用來說,hibernate太過重了!
高洛峰2017-04-17 13:05:43
hibernate太重了,不建議新手學,另外裡面一堆的概念不是一個新手能操縱的;建議你學一下mybatis,入門簡單,半自動orm,裡面要寫sql,還能學習和精通sql,亦可多得;寧外不要問什麼主流不主流,mybatis和hibernate在專案都是考慮他們的特性、性能、開發效率,人員熟練度才選擇用誰的(貌似現在高平發的網站都是用mybatis多),寧外你們公司專案上用了ibatis,那你更應該學習一下了,然後了解些它的升級mybatis(其實這個是ibatis從apache遷出去後改的名字而已,東西都是繼承和改進的)