-1
我正在開發一個應用程序有一些參數作爲配置數據。我編寫了一個swing應用程序,並將一個類聲明爲ConfigClass.I將配置參數字段添加到此類中,並通過可序列化的實現將其存儲到文件中。
在讀寫過程中,我使用加密來保護密碼。 在我的應用程序的未來版本中,我將添加或刪除一些字段,並希望我的客戶不會失去價值。所以我嘗試使用「serialVersionUID = 34L」,當我的客戶升級我的應用程序時,新的應用程序可以讀取舊的配置並獲取舊/新的通用字段。這樣我的客戶就不會再次重新輸入數據。問題是當我del字段和以上協議不起作用!爲什麼?java serialVersionUID不工作,因爲我需要
public class UserConfiguration implements Serializable {
static final long serialVersionUID = 42L;
//USER Define User Config elements
private String bankName;
private String bankCode;
}
[管理序列化Java對象的多個版本]可能的重複(http://stackoverflow.com/questions/3678136/managing-serveral-versions-of-serialized-java-objects) – Augusto
因爲它是一個不好的協議。對於不同版本的配置,您需要更復雜的特殊處理。 – Fildor