HashMap から JList にデータを取り込むにはどうすればよいですか? リストには値のみを表示するにはどうすればよいですか?
リストに次のコードを入力しています。アプリケーションを起動すると、{1=Value1}、{2=Value2} などのリスト項目が表示されます。値だけを表示したいです。
HashMap を使用しているのは、JList が Insert メソッド用に選択された値のキーを使用するフォームを送信するときに後で必要になるためです。
public void populateListwithCategories(final JList list) {
try {
DefaultListModel listModel = new DefaultListModel();
List<AdvertisementCategory> advertisementCategories = advertisementCategoryProvider.getAdvertisementCategories();
for (AdvertisementCategory advertisementCategory : advertisementCategories) {
int id = advertisementCategory.getId();
String name = advertisementCategory.getName();
advertisementCategory.advertisementMap.put(id, name);
listModel.addElement(advertisementCategory.advertisementMap);
}
list.setModel(listModel);
} catch (MalformedURLException ex) {
Logger.getLogger(AdvertisementCategoryController.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(AdvertisementCategoryController.class.getName()).log(Level.SEVERE, null, ex);
}
}
これは、データをハッシュマップにエクスポートする My AdvertisementCategory モデルです。
public class AdvertisementCategory {
private int id;
private String name, description;
public List<AdvertisementCategory> advertisementCategories;
public Map<Object, String> advertisementMap = new HashMap<>();
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public AdvertisementCategory(int id, String name, String description) {
this.id = id;
this.name = name;
this.description = description;
}
public AdvertisementCategory(String name, String description) {
this.name = name;
this.description = description;
}
public AdvertisementCategory() {
}
public AdvertisementCategory(int id, String name) {
this.id = id;
this.name = name;
}
}