註冊 | 登入 | 全文檢索 | 排行榜 |
![]() |
» JWorld@TW
» Object Relational Mapping
» Hibernate
![]() ![]() |
![]() ![]() ![]() ![]() |
本主題所含的標籤 |
作者 | Re:Hibernate HQL Left Join [Re:wildpeanut] | ||
qrtt1
![]() ![]() ![]() ![]() ![]() ![]() 發文: 1756 積分: 32 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() wildpeanut wrote: 你不需要特別轉成 Annotation 在沒原先的做法一定能用 <many-to-many> 做出 1-to-* 的效果。 AnnotationConfiguration 是用在讀 Configuration 時為了讀那些含有 Annotation 的類別用的。 是用在 HibernateUtil 裡的
Hibernate 是否真能讓你保持資料庫的可移植性,那要看你資料庫間的 SQL 實作有多大的差異。 這差異可能比你想像來得多,SQL 包含的不只是語法、還有資料型別的差異。 光是處理聚合函式就會想要光依賴 Hibernate 來維持可移植性了。 因為語法的實作的嚴謹度不同, 會透成最後組成 SQL 的語法有很大的不同,間接影響你 HQL 的寫法。 我自己覺得 Hibernate 能處理的可移植性,是資料型態上的支援。 因為他有 Dialect 的設計,你可以不用理會資料庫到底有沒有布林型別。 像 Oracle 就沒有布林要用整數來取代,有的資料庫是有布林就直接定義成布林欄位。 另外,針對不同資料庫的最佳化,也有必要直接改成 natvie SQL,也可能直接使用資料庫內建的特異功能。 這就只能將你的 SQL 獨立至設定檔案,依情況透過 build tool (ex. ANT) 幫你選擇要用那一個資料庫的設計了。 Hibernate 設計的初衷是要讓熟悉 OOP 的程式設計師以 OO 的方式與資料庫互動, 至於是不是可以移植並不是最大的考量。 也許能這麼想:Java 即使是攜性好的,但為了效能必需以 JNI 輔助時產生的 trade off ![]() ![]() 蝸牛角上爭何事?石火光中寄此身,隨富隨貧且歡樂,不開口笑是癡人。 my notes |
話題樹型展開 |
人氣 | 標題 | 作者 | 字數 | 發文時間 |
10742 |
![]() | wildpeanut | 579 | 2010-08-09 11:58 |
10401 |
![]() ![]() | qrtt1 | 223 | 2010-08-09 13:08 |
10410 |
![]() ![]() ![]() | wildpeanut | 167 | 2010-08-09 13:18 |
10379 |
![]() ![]() ![]() ![]() | qrtt1 | 535 | 2010-08-09 13:59 |
10357 |
![]() ![]() ![]() ![]() ![]() | wildpeanut | 431 | 2010-08-09 23:29 |
10563 |
![]() ![]() ![]() ![]() ![]() ![]() | qrtt1 | 1951 | 2010-08-09 23:56 |
10340 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() | wildpeanut | 1711 | 2010-08-29 19:26 |
» JWorld@TW » Object Relational Mapping » Hibernate |
![]() ![]() ![]() ![]() |
![]() ![]() ![]() |