wmaraci reklam

Acil Yardım! Jtable Listeleme

6 Mesajlar 903 Okunma
pst.net
wmaraci reklam

rocket147 rocket147 WM Aracı Kullanıcı
  • Üyelik 25.08.2014
  • Yaş/Cinsiyet 38 / E
  • Meslek Memur
  • Konum Ankara
  • Ad Soyad E** B**
  • Mesajlar 59
  • Beğeniler 6 / 8
  • Ticaret 2, (%100)
Arkadaşlar okul proje ödevim için hastane otomasyonu yapmam gerek. Veri tabanına bilgileri kaydediyorum ancak Jtable da verileri göstermeyi beceremedim. Youtube videolarından veya kaynaklardan bir türlü bulamadım. Teamviewer ile bağlanarak yardımcı olacak var mıdır acaba?
 

 

wmaraci
reklam

rocket147 rocket147 WM Aracı Kullanıcı
  • Üyelik 25.08.2014
  • Yaş/Cinsiyet 38 / E
  • Meslek Memur
  • Konum Ankara
  • Ad Soyad E** B**
  • Mesajlar 59
  • Beğeniler 6 / 8
  • Ticaret 2, (%100)
Java bilen arkadaşlar lütfen yardım.
 

 

YazilimMimari YazilimMimari Eski adi: Turgay Can Kullanıcı
  • Üyelik 25.06.2012
  • Yaş/Cinsiyet 38 / E
  • Meslek Engineering Director
  • Konum İstanbul Avrupa
  • Ad Soyad T** C**
  • Mesajlar 771
  • Beğeniler 2 / 260
  • Ticaret 0, (%0)
Kaynak kodlarınızı paylaşıp, hata alıyorsanız hata çıktısını paylaşır mısınız?
 

 

https://www.linkedin.com/in/turgaycan/
Kaliteli kod yazılır.. (Günlük/Saatlik ücreti ile)

rocket147 rocket147 WM Aracı Kullanıcı
  • Üyelik 25.08.2014
  • Yaş/Cinsiyet 38 / E
  • Meslek Memur
  • Konum Ankara
  • Ad Soyad E** B**
  • Mesajlar 59
  • Beğeniler 6 / 8
  • Ticaret 2, (%100)
Veritabanına bağlanamadı diyor run yapar yapmaz.

ResultSet result;
Connection connection;
Statement statement ;
int sutunSayisi ;
try {
Class.forName("com.mysql.jdbc.Driver");

// Oluşturduğumuz veritabanının adını,kullanıcı adı ve şifreyi göndip Mysql // bağlantı kuruyoruz. connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/dbhastane","root","");

// bağlantı tipinden statement oluşturuyoruz.
statement=connection.createStatement();

// doktor tablosundaki tum verileri alıyoruz
result=statement.executeQuery("Select * from tbdoktor ");

//Veri tabanındaki sutunlarin sayisini alıyoruz.
sutunSayisi=result.getMetaData().getColumnCount();

//Table tipinde model olusturuyoruz.
DefaultTableModel table=new DefaultTableModel();

//table referansına veritabanındaki sutunları ekliyoruz.
for(int i=1;i<=sutunSayisi;i++)
table.addColumn(result.getMetaData().getColumnName(i));

//Veritabanindaki tum satir ve sutunlari tarayip Table'a ekliyoruz.
while(result.next()){
Object[] row=new Object[sutunSayisi];
for(int i=1;i<=sutunSayisi;i++)
row[i-1]=result.getObject(i);
table.addRow(row);
}

//table referansına eklediklerimizi jtable1'e atıyoruz.
jTable1.setModel(table);

//baglantıları kapatıyoruz.
result.close();
connection.close();
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null, "VeriTabani Baglanti Hatasi");
}
 

 

wmaraci
Mersin evden eve nakliyat

YazilimMimari YazilimMimari Eski adi: Turgay Can Kullanıcı
  • Üyelik 25.06.2012
  • Yaş/Cinsiyet 38 / E
  • Meslek Engineering Director
  • Konum İstanbul Avrupa
  • Ad Soyad T** C**
  • Mesajlar 771
  • Beğeniler 2 / 260
  • Ticaret 0, (%0)
//Veritabanindaki tum satir ve sutunlari tarayip Table'a ekliyoruz.
while(result.next()){
Object[] row=new Object[sutunSayisi];
for(int i=1;i<=sutunSayisi;i++)
row[i-1]=result.getObject(i);
table.addRow(row);
}


for loop'un dışında row(satır)'u eklemelisiniz.

basit bir simüle edelim.

database'den bir satır gelsin.

id name
1 turgay


--

while(result.next()){//result.next() -> satırı al -> (1, turgay)
Object[] row=new Object[sutunSayisi]; //sutunSayısı -> 2 -> Object[2] şeklinde bir object array oluşturduk
for(int i=1;i<=sutunSayisi;i++){ //sutun sayısını dönüp, her row için ilgili sutun değerini alacağız, Array index'i 0 dan başladığı için -1 ile değer ataması yapılmış ;)
row[i-1]=result.getObject(i); //burada alınan değer ilk sutun değeri için -> 1, ikinci sutun için -> turgay olacaktır.
}
table.addRow(row); //object Array'i tek satır için doldurduktan sonra tablomuza ekliyoruz.

}
--

++
finally bloğu yazıp, bağlantı için null kontrolü yapıp, öyle db baglantısını kapatınız. öncesinde kapatmayınız.


İyileştirme için önerim ;

Temel olarak kod oldukça primitif yazılmış.

ArrayOutOfIndexException + NullPointerException yemeye oldukça açık.

Statik array yerine genişleyebilir ve null değer alabilir List implementasyonunu kullanmanız hem kullanışlı hemde hatalardan daha uzak bir kod yazmanızı sağlar.

kolay gele.
rocket147

kişi bu mesajı beğendi.

https://www.linkedin.com/in/turgaycan/
Kaliteli kod yazılır.. (Günlük/Saatlik ücreti ile)

rocket147 rocket147 WM Aracı Kullanıcı
  • Üyelik 25.08.2014
  • Yaş/Cinsiyet 38 / E
  • Meslek Memur
  • Konum Ankara
  • Ad Soyad E** B**
  • Mesajlar 59
  • Beğeniler 6 / 8
  • Ticaret 2, (%100)

rocket147 adlı üyeden alıntı

Veritabanına bağlanamadı diyor run yapar yapmaz.

ResultSet result;
Connection connection;
Statement statement ;
int sutunSayisi ;
try {
Class.forName("com.mysql.jdbc.Driver");

// Oluşturduğumuz veritabanının adını,kullanıcı adı ve şifreyi göndip Mysql // bağlantı kuruyoruz. connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/dbhastane","root","");

// bağlantı tipinden statement oluşturuyoruz.
statement=connection.createStatement();

// doktor tablosundaki tum verileri alıyoruz
result=statement.executeQuery("Select * from tbdoktor ");

//Veri tabanındaki sutunlarin sayisini alıyoruz.
sutunSayisi=result.getMetaData().getColumnCount();

//Table tipinde model olusturuyoruz.
DefaultTableModel table=new DefaultTableModel();

//table referansına veritabanındaki sutunları ekliyoruz.
for(int i=1;i<=sutunSayisi;i++)
table.addColumn(result.getMetaData().getColumnName(i));

//Veritabanindaki tum satir ve sutunlari tarayip Table'a ekliyoruz.
while(result.next()){
Object[] row=new Object[sutunSayisi];
for(int i=1;i<=sutunSayisi;i++)
row[i-1]=result.getObject(i);
table.addRow(row);
}

//table referansına eklediklerimizi jtable1'e atıyoruz.
jTable1.setModel(table);

//baglantıları kapatıyoruz.
result.close();
connection.close();
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null, "VeriTabani Baglanti Hatasi");
}


YazılımMimarı adlı üyeden alıntı

for loop'un dışında row(satır)'u eklemelisiniz.

basit bir simüle edelim.

database'den bir satır gelsin.



--


}
--

++
finally bloğu yazıp, bağlantı için null kontrolü yapıp, öyle db baglantısını kapatınız. öncesinde kapatmayınız.


İyileştirme için önerim ;

Temel olarak kod oldukça primitif yazılmış.

ArrayOutOfIndexException + NullPointerException yemeye oldukça açık.

Statik array yerine genişleyebilir ve null değer alabilir List implementasyonunu kullanmanız hem kullanışlı hemde hatalardan daha uzak bir kod yazmanızı sağlar.

kolay gele.


Teşekkürler.
 

 

wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al