Evet bundan önceki yazımızda java ile veritabanı işlemlerini gerçekleştiren sınıflarımızı oluşturmuştuk. Bu yazımda ise, gelen sorular üzerine veritabanından çekilen verileri jTable içerisinde görüntülemeyi anlatacağım. Öncelikle şunu belirteyim daha önce c#, vb.net gibi dillerde programlama yaptıysanız datatable, dataset gibi kontrolleri arıyor olabilirsiniz. Fakat java içerisinde bu kavramlar yer almıyor. O zaman nasıl verilerimizi tabloda göstereceğiz, adım adım anlatalım.
Öncelikle formumuzu tasarlıyoruz. Tasarım yaparken bir GUI kullanmakta fayda. Öncelikle jScrollpane’i jFrame’in içine yerleştirelim. jScrollpane tablonun kaydırma işlemleri için gerekli olacak. Daha sonra jTable’ı jScrollpane’in içerisine koyarak uygun şekilde boyutlandırıyoruz. jTable’ın ismini(variable) “table” olarak değiştirelim. Son olarak tablomuzu doldurmak için bir adet jButton’a ihtiyacımız olacak. İşlemleri sırayla yaptığınızda aşağıdaki gibi bir ekran görüntüsü elde edeceksiniz. Tabi tablo içerisinde ki verileri saymazsak.

Bir önceki örnekte oluşturduğumuz ogrenci tablosundaki verileri, yine VtIslemleri sınıfımızdaki ogrenciBilgisiCek metoduyla alıyoruz. Eğer verileri çekmek için hazır bir metodunuz yoksa Java ile Veritabanı İşlemleri isimli yazımı okumanızı tavsiye ederim. ogrenciBilgisiCek metodunun bir Arraylist döndürdüğünü farketmişsinizdir. Arraylist içerisinde ki verileri kullanarak tablomuzu dolduracağız. Aşağıdaki tabloyuDoldur metodumuzu yazalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
public void tabloyuDoldur() { ArrayList<Ogrenci> ogrenciListem=new ArrayList<Ogrenci>(); VtIslemleri vt= new VtIslemleri(); ogrenciListem=vt.ogrenciBilgisiCek(); String dizim[][]=new String[ogrenciListem.size()][]; for (inti = 0; i < ogrenciListem.size(); i++) { dizim[i]=new String[]{ valueOf(ogrenciListem.get(i).getOgrNo()), valueOf(ogrenciListem.get(i).getIsim()), valueOf(ogrenciListem.get(i).getSoyIsim()), valueOf(ogrenciListem.get(i).getdYeri()) }; } TableModel tabloModeli=new DefaultTableModel( dizim, new String[] {"Öğrenci No", "İsim", "Soy İsim", "Doğum Yeri"} ); table.setModel(tabloModeli); } |
Son olarak tabloyuDoldur metodumuzu buttonun “actionPerformed” eventi içerisinden çağırıyoruz. Verilerimiz tablonun içerisinde yukarda gördüğünüz şekilde doldurulacak. Konuyla ilgili sorularınızı bana iletin. Kolay gelsin.
Merhaba,
İlk önce güzel anlatım için teşekkür ederim.
Söyle bir sorum var,verileri veri tabanından çektikten sonra jtable’da gösterdik ve bunlara ek olarak düzenleme özelliği eklediysek , ve herhangi bir öğrenciye düzenleme yaptıysak tabloyu nasıl güncelleyebiliriz?
Ben hepsini yaptım ama tabloyu güncelleyemiyorum, hatta verinin yeniden okunması için refresh buttonu ekledim ve bu button yeniden vt ‘den okuma işlemi yapıyor ancaksadece jframe kapatıp açtığımda liste güncelleniyor…
peki bu jtable’ı nasıl oluşturacağız yardım edebilir misiniz ?