Re: [站內] 找工作真的很難
※ 引述《Lordaeron (Terry)》之銘言:
: 以上兩個只能叫hibernate 的Bug.
: 而不是benefit/advantage, drawback/disadvantage
: 給個題目吧:--假設資料量都是很大的.--
: 父表father和子表child,我現在查詢child的資料,表格中需要顯示每個child的father名稱
: ,如果按sql的寫法,就可以只在sql中取father名稱(cname),
: 如:select c.*, f.cname as fathername from child c join father f ......
: 如果用hibernate 呢?
我明白你想說是什麼.
不過這理論未必成立.
一般較為大型一點的 app, 特別是 multi-tier
的 app, 中間處理通通都是基於本身己有的 domain model,
再經過一些預先定義好的 data access layer (DAO etc)
假設本身的domain model 根本就是 Child 裡面有 Father
的 ref, 你經 JDBC 也好 Hibernate 也好, 也是避免不了
這些 "無謂" 的資料. 要是你已定義了 Child 裡面存
著 Father 的 name, 也不會因你用 Hibernate 或 JDBC
而有很大的分別. Hibernate 甚至能有 Lazy Fetching
把不常要的資料在真的 access 到時才 fetch
說 Advantage Disadvantage 反而是 Hibernate 這類
工作方式適不適合你的系統. 比如很多 backoffice 系統
需要做大量 data 的 update 或搬移, O-R mapping 的 solution
要你把東西都取出, 修改, 再 save. 而DB Oriented 的方法
則只是一句 update/insert/delete, 後者當然適合.
但對於很多 transactional 的 app, 工作模式都是取需要
的 object 再修改再 save 或作 enquiry etc, Hiberate
則很切合.
你整天都在說 Framework 只能在 Frame 裡 Work,
我則會說, Framework 是在 Frame 裡就能 save my work.
Alien
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 202.22.246.26
※ 編輯: adrianshum 來自: 202.22.246.26 (06/12 18:52)
討論串 (同標題文章)