簡體   English   中英

與MySQL保存/恢復Java swing JList元素

[英]save/restore Java swing JList Element to/from MySQL

我是Java的新用戶(並且經常使用),並且正在尋找一種方法來將所有JList元素保存(並在以后重新加載)到數據庫或特別是MySQL。 我閱讀了有關Java Serializable的信息,找不到可用於參考的工作代碼。

序列化不是答案。 您想要做的是擁有一個可以迭代JList Model類的控制器,並將每個項目中的數據保存到數據庫中。

String[] data = {"one", "two", "three", "four"};
JList dataList = new JList(data);

for(int i = 0; i < dataList.getModel().getSize(); i++) {
    String item = (String)dataList.getModel().getElementAt(i);
    saveItemToDatabase(item);
}

這樣,您僅將數據保存到數據庫,而不是列表的UI部分,並且將其周圍的所有其他位保存到數據庫中,這些內容都試圖序列化Jlist。

編輯:要保存整個模型,我仍將單獨保存項目,而不是保存BLOB。 因此,要從數據庫取回數據,您可以執行以下操作

dataList.setListData(loadModelFromDatabase());

public Vector loadModelFromDatabase() {
    Vector listModelData = new Vector();
    ResultSet res = conn.prepareStatement("SELECT * FROM listmodel").executeQuery();
    while(res.next()) {
       listModelData.add(res.getString(1));
    }

    return listModelData;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM