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");
}
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.