[問題] Java Intropection的代價是否很貴?
會問這個問題,是因為好像曾經聽過這類說法
再加上最近看過 apache BeanUtils 的原始碼以後,
發覺原來就算只是物件的屬性蓋來蓋去也可以這麼複雜....
既是查找,然後定義再比對,最後還要快取
密密麻麻程式碼讓我不知如何下手... 其實我想解決的問題不複雜啊~ Orz
現在很流行讓屬性的 setter 有回傳值,然後型態設定為物件自己,
接著理所當然在設定完屬性後回傳自己,方便使用者連續呼叫 setter 設定屬性。
只是公司多年長期維護下來的案子已經很舊了
裡面依賴的 struts1 , apache BeanUtils 2.1, 都不覺得這種 setter 是合理的,
讓我想把物件的 setter 回傳自己的構想很難實行....
因此有自行實現 BeanUtils 工具的想法
只是看到 BeanUtils 的原碼令我有些卻步,
想請問有什麼方法可以解決像這樣的需求呢?
不管是開發新工具還是改舊的工具,請問大家會怎麼做呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 36.230.164.144
→
01/22 21:00, , 1F
01/22 21:00, 1F
→
01/22 21:04, , 2F
01/22 21:04, 2F
→
01/22 21:05, , 3F
01/22 21:05, 3F
→
01/22 21:06, , 4F
01/22 21:06, 4F
Setter 很容易產生, 只可惜後續在不同 bean 之間傳值不是很方便
偏偏現在專案有提供的工具只接受 void setXXX 這種寫法
→
01/22 21:41, , 5F
01/22 21:41, 5F
→
01/22 21:42, , 6F
01/22 21:42, 6F
在有些比較舊的 BeanUtils 定義中, 大概會覺得這不算是正常 Java Bean的屬性吧~
推
01/22 22:55, , 7F
01/22 22:55, 7F
公司開發很多年, 天天投入營運的專案了,
依賴的工具庫和框架某方面來說也依賴得很深, 成為系統一部分, 不是說改就能改的
※ 編輯: dream1124 來自: 36.230.164.144 (01/22 23:46)
→
01/23 08:24, , 8F
01/23 08:24, 8F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
java 近期熱門文章
PTT數位生活區 即時熱門文章