[英]How do I populate a jcombobox with information from a mySQL database?
基本上,該程序獲取客戶信息並將其轉儲到數據庫中。 為了更改信息,我希望用戶能夠從組合框中選擇一個客戶名稱,以便系統隨后可以從該客戶的數據庫中調用所有信息。 訪問數據庫很好,可以放入信息並進行更改。.我只是想不出如何使組合框填充所有客戶名稱。
最簡單的解決方案是從數據庫創建String數組。 然后使用它來創建組合框。
String[] mydbStrings = .....;
JComboBox mycombo = new JComboBox(mydbStrings);
但這只會給您一些字符串。 最好定義一個代表客戶的類,從數據庫中加載客戶,確保在Customer類中定義了足夠的toString()並創建在組合框中使用的客戶數組。 這樣,客戶名稱顯示在組合框中,但是如果您選擇一個,則可以輕松獲得所有客戶詳細信息。
如果您認為這占用大量內存,無法一次加載所有客戶數據,則可以僅使用名稱和ID創建較小的custInfo類。 然后在組合框中使用該數據集,並在選定數據后加載其余的客戶數據。
如果您知道如何填充普通的組合框,以及如何從數據庫中提取數據,這應該很簡單。 默認情況下,組合框將在構造函數中采用字符串數組,因此您可以僅傳遞字符串數組(客戶名稱),但是我建議為組合框創建一個模型。 然后,您可以將客戶(最可能是一些POJO)傳遞給模型,然后您可能還想創建一個渲染器,以便可以根據需要顯示名稱。 然后,當選擇了客戶時,您可以查詢模型以獲取所選客戶的ID,然后使用該ID檢索所需的客戶數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.