2 Mayıs 2014 Cuma

JCombobox'ta Database'den Veri Çekmek ve Bu Listelenen Verilerin Sütununu Görmek

Merhaba arkadaşlar,

Bu dersimizde JComboBox'ta listelenen verinin sütun id'sini görmekten bahsedeceğim.

Bize gerekli olan şeyler şunlar;

Bir database = personelDb
Bir tablo = departman
Departmanın içerisine de iki sütun;
Id, departmanAdi

Sonra Database ekleme yapıyoruz;


public static void initRecord(DepartmanDomain yeniKayit) {

Connection baglanti = getConnection();
try {
Statement sorgu = baglanti.createStatement();
sorgu.executeUpdate("INSERT INTO departman (departmanAdi) VALUES('"+ yeniKayit.getDepartmanAdi() + "')");
} catch (SQLException e) {
// TODO Auto-generated catch block
JOptionPane.showMessageDialog(null, e);
}
}


Sonra bu eklediğimiz veriler için birde listeleme methodu yapalım;


public static List<DepartmanDomain> listele() {

List<DepartmanDomain> liste = new ArrayList<DepartmanDomain>();
Connection conn = getConnection();
try {
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM epartman");

while (rs.next()) {
DepartmanDomain siradakiDepartmanDomain = new DepartmanDomain();
siradakiDepartmanDomain.setId(rs.getInt("id"));
siradakiDepartmanDomain.setDepartmanAdi(rs.getString("departmanAdi"));
liste.add(siradakiDepartmanDomain);
}

stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}

return liste;
}


Ardından bu listeleme methodunu JComboBox?ın içersinde çağıralım.
Şu şekilde;


final JComboBox departmanBox = new JComboBox(DepartmanDao.listele()
.toArray());


http://resim.sanalkurs.net/uploads/mvvnl.jpg
İşte bize lazım olan ana kodumuzu yazıyorum?


DepartmanDomain secilenDepartman = (DepartmanDomain) departmanBox.getSelectedItem();


İşte yaptığımız bu Cast olayı ile departmanBox?ta bulunan verilerin sütununu öğreniyoruz.
Sonra domain yardımı ile hangi sutunu almak istiyorsak o sutunu ekrana basıyoruz.


System.out.println(secilenDepartman.getId());



Kısaca JComboBox'ta bulunan verilerin sütunu bu şekilde tespit edilir.

Hiç yorum yok:
Write yorum

Labels