想知道是否有辦法改變其他對象引用的堆上的對象。Java:更改堆上的對象引用?
我特別想做的是管理我的瞬態配置。我正在做的是從JAXB或JPA加載「綁定」配置。我有一個管理器,維護一些線程來檢查這些配置存儲是否改變。如果他們這樣做,我希望再次從存儲中加載配置(創建配置的新實例),並用堆中的新配置實例替換「陳舊」配置實例,以便引用配置數據的任何對象都將獲得最新。
我知道我可能會遇到一個噩夢,不得不處理分層對象引用 - 但我只是想了解各種可能的方法,然後才決定僅創建文檔而不創建本地引用並始終調用從配置管理器,如果你期望最新=)
任何想法如何做到這一點?我對AOP不太熟悉......但從我所瞭解的情況來看...我認爲這可能爲實現這一目標提供了一條途徑。
任何其他的想法是值得歡迎的,當然=)
史蒂夫
+1馬克擊敗了我的拳頭,但這也正是我如何去了解它。與本例中的簡單包裝對象相比,AOP會過度殺傷。 – rancidfishbreath 2010-08-24 14:38:53
謝謝馬克。我想到了這一點,但問題涉及到JAXB/JPA綁定對象。這些將創建一個分層對象結構,支持繼承和聚合。雖然「清理」一個集合並重新添加這些項目並不難,但我想找到一個更優雅的解決方案。我也考慮過鎖定來處理同步,但我擔心那些可能相關的配置,但不在同一個對象內,更不用說同一個getter/setter了。在這種情況下,它幾乎需要一個交易。 – 2010-08-24 14:42:10