我正在爲人們聊天做一個Java Messenger,我正在尋找一種在用戶計算機上記錄消息存檔的方法。Java Messenger:將消息存檔保存在計算機上
我在我的腦海兩個可能性:
數據保存在我保存在我的文檔文件夾中的XML文件的談話。
要使用SQlite,但問題是我不知道如何將它集成到我的安裝程序包,我不知道它是否非常有用。
什麼是最適合您的解決方案?
謝謝
我正在爲人們聊天做一個Java Messenger,我正在尋找一種在用戶計算機上記錄消息存檔的方法。Java Messenger:將消息存檔保存在計算機上
我在我的腦海兩個可能性:
數據保存在我保存在我的文檔文件夾中的XML文件的談話。
要使用SQlite,但問題是我不知道如何將它集成到我的安裝程序包,我不知道它是否非常有用。
什麼是最適合您的解決方案?
謝謝
另一種選擇是使用JavaDb,附帶免費的Java 6(及更高版本)
在你做出選擇,你應該考慮這樣的問題:
等,這是完全可能的,即使是簡單的文本文件就足夠了。也許你最好的選擇是選擇一個簡單的解決方案(例如文本文件)並實現它,並看看你需要多長時間。但是,請提供適當的持久性級別抽象,以便您可以在未來最小干擾的情況下插入不同的解決方案。
我會去尋找XML文件,因爲它們更通用,並且可以在您的信使之外以更多或更少的人類可讀格式打開。我使用Pidgin進行即時通訊,並將聊天記錄保存爲XML格式。同樣要從應用程序中讀取歷史記錄,您可以輕鬆地在HTML中進行轉換,以便很好地顯示它。
如果使用JAXB,將Java對象轉換爲/從XML轉換非常容易。您只需在您的類上添加一些註釋,然後通過JAXB編組器/解組器來運行它們。請參閱http://docs.oracle.com/javaee/5/tutorial/doc/bnbay.html
使用谷歌的協議緩衝或10gen的bson。他們更小更快。
http://code.google.com/apis/protocolbuffers/docs/javatutorial.html
的一個問題是,這些都是二進制演示,你可能想使存檔透明/讀取到用戶
非常感謝您的回答。 1.對用戶透明。 2.性能不是太重要 3.沒有遷移 4.我不知道它是什麼:) 你認爲JavaDb適合我嗎? – 2012-01-12 02:46:53