2011-04-15 60 views
0

我正在編程朝向Bloomberg Desktop Java API,我通過API訂閱和接收Message對象中的市場數據,其中包含不同字段和不同類型的相應值。我想「記錄」一系列消息,以便通過重播已知的消息序列來對我的代碼進行測試,以處理這些對象。理想情況下,我想在一天中訂閱一些消息,並將它們放入一個ArrayList(或類似的),然後序列化對象列表。但是,Message對象不會實現Serializable接口,因此這看起來不像我希望的那樣工作。序列化外部對象

是否有可能或有任何解決方法來序列化不執行Serializable的外部對象。謝謝。

+0

重複http://stackoverflow.com/questions/5256308/serialization-of-java-object-created-from-external-api – WhiteFang34 2011-04-15 08:20:34

回答

0

我知道最簡單的方法是xStream。這是一個來自xStream網站的FAQ專門關於這個

+0

謝謝。實際上,我試圖根據其他一些建議來包裝Message對象,因爲這似乎是'正確的'解決方案,但事實證明這些'Message'對象大約有半個兆字節,每個對象都有無限的域,所以我放棄。我現在使用的XStream非常出色。我現在唯一的問題(沒有連接到XStream)是導出的文件很快變成了幾千字節的大小,所以我需要滾動文件並投資更多的磁盤空間:-)。 – hgus1294 2011-06-07 17:20:22

2

您可以包裝Message對象並實現Externalizable接口,從而您可以在readExternal/writeExternal方法中編寫序列化/反序列化邏輯。