天天看點

ORM 架構的 setter 方法|學習筆記

開發者學堂課程【Java 面試疑難點串講 3:開發工具及架構:ORM 架構的 setter 方法】學習筆記,與課程緊密聯系,讓使用者快速學習知識。

課程位址:

https://developer.aliyun.com/learning/course/26/detail/556

ORM 架構的 setter 方法

MyBatis 和 Hibernate 中的 set 方法

Mybatis 開發裡面主要的核心是要求使用者自己來定義使用的 SQL 語句。

而 Hibernate 特點由于其要考慮可移植性的問題,是以在 Hibernate 處理之中,它所需要考慮的就是一個自動生成 SQL 問題。

但是現在的所有問題都放在了 POJO類(VO),Hibernate 下,如果該 POJO 類的對象處于持久态狀态,那麼每一次用 setter 方法都會更新資料(如果你的事務是手工控制,則在若幹個 setter 調用後才會發出更新操作),

而 MyBatis 沒有這樣的功能,因為 Hibernate 之中搞的這種對象的狀态設計有些糟糕。

而且這也是 Hibernate 本身性能低的原因。如果要探究其起源,主要是因為傳統的 EJB (Entity Bean)影響。