2012-12-03 33 views
1

我想知道如何恢復以前的輸入,我每次關閉並重新運行Eclipse中的程序。例如,該程序讓用戶添加一個餐館對象並將其添加到一個向量中。關閉並重新運行該程序後,這些餐館對象仍然存在於矢量中。在Eclipse中關閉Java程序時保存會話

+2

您應該以某種方式保存。默認的序列化應該足夠了。我想在eclipse中沒有這樣的功能。 – zeller

回答

0

一個程序結束了所有對象的引用丟失,這些對象可能被垃圾收集器破壞。

一個你的對象引用丟失了,你無法取回它。

一個人認爲你可以這樣做:你必須序列化你的對象一些地方例如:在某些文件中,當你重新啓動程序時,只需讀取該文件並獲取它。
看一看How do I serialize an object and save it to a file in Android?

1

Zeller是對的。您必須以某種方式存儲信息:在數據庫或文件系統上

爲此,您可以使用序列化容器對象,如向量ArrayList等。另一種方法是將其寫入數據庫,啓動時程序讀取DB並對該對象進行反序列化。

0

Eclipse爲紀念提供了經常的界面。 因此,您可以輕鬆恢復您的視圖或編輯器。

例如,ViewPart時:

public void saveState(IMemento memento) 
    public void init(IViewSite site, IMemento memento) throws PartInitException 

但是,這是節省輸入/選擇。

如果你想存儲所有數據,我一起喜歡(嵌入式)數據庫中使用Java的持久化API或休眠狀態。因此,您可以輕鬆地將對象存儲在關係數據庫中。

相關問題