iBATIS和Hibernate區別


iBatis和Hibernate之間有著較大的差異,但兩者解決方案很好,因為他們有特定的領域。我個人建議使用iBATIS的,如果:

  • 你想建立自己的SQL,並願意維持他們.

  • 你的環境是由關係資料模型驅動的。

  • 你的專案工作有複雜架構的。

簡單地要使用Hibernate,如果:

  • 你的環境是由物件模型驅動的,並希望自動生成的SQL。

要計算的一些區別:

  • iBATIS :
    • 簡單

    • 更快的開發時間

    • 靈活

    • 封裝尺寸更小

  • Hibernate:
    • 為你生成SQL,這意味著你不用花時間在SQL上。

    • 提供了許多更先進的快取記憶體

    • 高可延伸性

另一個區別是,iBATIS利用SQL語句可能是依賴資料庫,使用Hibernate的HQL是相對獨立於資料庫,它是更容易改變資料庫。

Hibernate對映的Java作為POJO物件,iBatis將ResultSet對映,從JDBC API給出POJO OBJETS的資料庫表。

如果您使用儲存過程,那麼在Hibernate中可以做到這一點,但它在iBATIS比較有點困難。作為一種替代的解決方案iBATIS的對映結果集物件,所以沒必要去關心表結構。這非常適用於儲存過程,非常適用於報表應用程式等

最後,Hibernate和iBATIS的都是開源的物件關係對映(ORM)在同行業中可用的工具。使用這些工具的取決於你。Hibernate和iBatis兩者也有來自Spring框架的良好支援,以便它不應該是一個問題,選擇其中之一。