Bu örneğimde
veritabanına veri eklemek istiyorum.Bunun için önceki java ile mysql bağlantsı yazımda öğrendiklerimi
kullanıyorum.
Öncelikle
görsel kısım için yeni bir JFrame Form oluşturuyorum.2 jlabel ve 2 jtextfield sürükle
bırak ile ekliyorum ve aşağıdaki gibi bir pencere elde ediyorum:
Kod kısmına
öncelikle diğer sınıfıma bir nesne oluşturuyorum.(Veritabanı işlemlerimi diğer sınıfta
yapıyorum)Kaydet butonuna bastığımda ise kayıt yapabilmek için iki tane String ifade ile JTextfield ların içindeki
yazıları tutuyorum ve sonradan oluşturacağım “yeniKayit()” metoduna gönderiyorum.
Görsel kısmın “Kaydet” butonu için kod aşağıdaki gibi oldu;
private void
jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
DatabaseDemo d = new
DatabaseDemo();
String ad = jTextField1.getText();
String soyad = jTextField2.getText();
d.yeniKayit(null,ad, soyad);
}
yeniKayit(null,ad,soyad)
fonksiyona yollarken ilk ifadenin “null” olmasının sebebi veritabanında oluşturduğum
üye isimli tablonun ilk sütunun auto_increment olması yani değerleri kendi sırayla
atamasıdır , bu yüzden boş değer yolluyorum. Bunu yapmamın bir nedeni de sadece
iki ifademi girince veritabanı hatası almam oldu.
Simdi
main sınıfımın bulunduğu kısma geçiyorum.Constructor içerisinde library e eklediğim
Connector\J kütüphanemin yolunu gosteriyorum.2 tane de yeni metot oluşturuyorum.
Bunlaradan ilki “dbOpen()” metodur ki bu metot ile mysql bağlantısını
kuruyorum;
public void dbOpen(){
try {
con = (Connection)
DriverManager.getConnection("jdbc:mysql://localhost:3306/deneme","root","12345");
System.out.println("oldu");
} catch (SQLException ex) {
Logger.getLogger(DatabaseDemo.class.getName()).log(Level.SEVERE, null,
ex);
}
}
2.
metodum ise yeniKayit(String a,String b,String c) metodu , bu metot ile yeni
verileri mysql e kaydediyorum.
public void yeniKayit(String a,String
b,String c){
try {
dbOpen();
PreparedStatement ps =
con.prepareStatement("insert into uye values(?,?,?)");
ps.setString(1, a);
ps.setString(2, b);
ps.setString(3, c);
int control = ps.executeUpdate();
if(control == 1){
JOptionPane.showMessageDialog(null, "islem basarili");
}
ps.close();
con.close();
} catch (SQLException ex) {
Logger.getLogger(DatabaseDemo.class.getName()).log(Level.SEVERE, null,
ex);
}
}
Önce
dbOpen() ile mysql bağlantısını açıyorum. Sonra PreparedStatement nesnesi oluşturarak
mysql komutumu burada yazıyorum. “uye” tablosuna verileri eklemek için oluşturduğum
nesne ile “setString()” metodunu kullanıyorum. Aşağıdaki koda bakarsak
ps.setString(1, a);
burada 1 sütun numarasını , a ise metoda gönderdiğimiz ilk parametredir. Son
olarak JOptionPane ile
kayıt yapılması durumunda kullanıcıyı bilgilendiriyorum.
Ekran Görüntüleri
NetBeans projesini indirmek isteyenler için diskten paylaşıyorum
link aşağıda!
0 yorum:
Yorum Gönder