İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Programlama
  4. Programlama Dilleri
Programlama Dilleri

Java JTable ile Veritabanından Verileri Listeleme?

mstfcck27.04.20111 cevap8.992 görüntüleme
2010'den beri174 mesaj
#1
Java'da JTable nesnesinde mysql databaseden çektiğim verileri listelemek istiyorum bunu nasıl yaparım?

Buradaki ve buradaki örnekleri denedim ama ekrana listeleme yapamadım..

Ve kayıtlar arası gezinmek için de butonlar yapmak istiyorum. Aşağıdaki kod ile verileri Text'lere yükleyebiliyorum. Dolayısıyla sadece kayitlar.next() ile ilk kayda ulaşıyorum. Bu komutu public tanımlayıp diğer butonun içine (ör: ileri butonu) kayitlar.next(); yazdığımda hata veriyor. Bu konuda bilgisi olan var mı?
            baglanti = (Connection) DriverManager.getConnection(veritabani, kullaniciadi, parola);
            String sorgu = "Select * From Ogrenciler";
            PreparedStatement komut = (PreparedStatement) baglanti.prepareStatement(sorgu);
            kayitlar = komut.executeQuery();
            kayitlar.next();
            jtId.setText(kayitlar.getString("Id").toString());
            jtNumara.setText(kayitlar.getString("Numara"));
            jtAd.setText(kayitlar.getString("Ad").toString());
            jtSoyad.setText(kayitlar.getString("Soyad").toString());
            jMesaj.setText("Bağlantı sağlandı.");
            System.out.println("Veritabanından veriler listelendi.");
            komut.close();            
            baglanti.close();
Cevaplar
mstfcck Konuyu açan
2010'den beri174 mesaj
#2
Çok uğraştırdı ama çözdüm:

baglanti = (Connection) DriverManager.getConnection(veritabani, kullaniciadi, parola);
String sorgu = "Select * From Ogrenciler";
PreparedStatement komut = (PreparedStatement) baglanti.prepareStatement(sorgu);
kayitlar = komut.executeQuery();
kayitlar.next();
ResultSetMetaData rowdata = (ResultSetMetaData) kayitlar.getMetaData();
int j = 0; int i = 0; int say = 1;
int col = rowdata.getColumnCount();
int k = rowdata.getColumnCount();
String[] kolon = new String[k];
for( j=0; j<k; j++) {
kolon[j] = rowdata.getColumnName(j+1);
}
jTable1.setModel(new javax.swing.table.DefaultTableModel(new Object [][]{},new String []{}));
DefaultTableModel model = (DefaultTableModel)jTable1.getModel();
model.setColumnIdentifiers(kolon);
while(kayitlar.next()) {
Object[] o = new Object[k];
for(j=0; j<k; j++) {
o[j] = kayitlar.getObject(j+1);
}
model.addRow(o);
}
jTable1.setModel(model);
System.out.println("Veritabanından veriler listelendi.");
komut.close();
baglanti.close();

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.