Şimdi Ara

Java da Jtable daki bilgileri direk olarak veri tabanına çekmek.

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
13
Cevap
0
Favori
813
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Herkese yine beyin yakan sorularla merhabalar:). Arkadaşlar acaba java da swing kütüphanesi üzerinden JTable üzerindeki bilgileri direk olarak veri tabanına eklemek mümkün müdür?. Yani yapmak istediğim şey şu misal olarak ben 10 malzeme ekledim. Jtable da görünüyor. Bu malzemeleri önce Jtable üzerinde görüp güncelledikten sonra toplu olarak nasıl MySql verği tabanına aktarabiliriz? Direk eklemede bir sıkıntı yok ancak tekrar diyorum ben jtable üzerinden eklemeye çalışıyorum. Bunu nasıl yapabilirim acaba? ? ? Bilen arkadaşlar varsa ve cevaplarsa çok çok sevinirim herkese iyi forumlar



  • Javayla ilgilemiyorm Direkt eklemeyi yapıyorsanız bence diğer türlü de yapmanız lazım atıyorum bi buttonda tableA ekleme kodları olsun ama veritabanına yazmasın diğer buttonda bir loop yardımıyla tableın tümünü oku onu yine loopla veritabanına yazdır

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Öncelikle vakit ayırıp cevap yazdığınız için çok teşekkürler.Bende tamda dediğiniz gibi hazırladım.Yani bir buton ile veri tabanına eklemeden table'a verileri aktarıyorum ancak table bilgilerini direk olarak veri tabanına aktaramıyorum bir türlü. Java yı yeni öğrendim sayılır. Çok fazla yabancı site gezdim sadece stack adlı bir sitede buldum ancak oradaki yöntemde işe yaramadı. Acemilik her işte olduğu gibi bu işte de zor malesef. Cevap için çok sağolun bu arada tekrardan uğraşıcam. Eğer bulursam kodları bu sayfa altında paylaşıcam. Tecrübeli arkadaşlardan da yardım bekliyorum bu arada
  • Hocam sen zaten bi veriyi table’a atıyorsan o veri senin elindedir. Atıyorum string a değerini tablonun 1. Sütununa at derken aynı zamanda veri tabanına atıver. Niye tabloya atıp , tablodan tekrar çekip veri tabanına atmak istiyorsun ki ?

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • pir2xh P kullanıcısına yanıt
    Yani şundan dolayı aslında mesela ben bir veri girdim.Misal :

    Ürün Adı Fiyat Kategori
    Parfüm 100 TL Kozmetik
    Dell laptop 2500 TL Elektronik

    - Burada misal parfüm fiyatını yanlış girdi. Bunun için de aynı menüde bu seçeneği güncellemek istiyorum malzemeleri depoya göndermeden önce. O yüzden dolayı önce verileri Jtable üzerinde görüp sonra Jtable daki verileri Mysql veri tabanına göndermek istedim. Diğer türlü direk olarak veri tabanına çekebiliyorum zaten. İnternet de yabancı siteleri ve forumları araştırdım. Ancak bu sorunun tam bir cevabını verememişler. Zaten bulamazsam dediğiniz gibi yapıcam direkmen cevap için çok teşekküreler.
  • O tip işlerde klasik olarak tek twk kayıt eklenir gridde veya jtable da güncelle diye bir button olur her satırda güncelleme yaparsın bu şekil işine yaramıyor mu

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Gökşen PASLI G kullanıcısına yanıt
    Yani aslında olabilir o şekilde de.Ancak ben giriş yaptıktan sonra önce kontrol edip sonra veri tabanına göndermesini istedim. Çok şükür ki 20dk önce sorunu çözdüm. Söz verdiğim gibi yaptığım işlemleri tek tek anlatacağım aşağıda.
  • İlk olarak bir tane swing ile Jframe ve ardından Jtable oluşturdum. Ekle-sil-düzelt butonlarını ekledim. Bu sayede kişi girdiği verileri table üzerine ekliyor. Misal
    Ürün Adı fiyat Kategori
    Parfüm 100 TL Kozmetik
    Dell laptop 2500 TL Elektronik

    gibi..
    daha sonra da bu Jtable üzerindeki bilgileri direk olarak Mysql veri tabanına gönderiyoruz.

    Bunu da öncelikle getConnection adlı bir class oluşturdum. Burada gerekli olan Connection,PreparedStatement,Statement,ResultSet leri tanımlıyorum. Ve burada da yeni bir metod oluşturdum.
  • public void add_new_goods(String kategori, String adi, String fiyati) {

    String query= "Insert Into `stockfallow` (kategori, adi, fiyati) VALUES(?,?,?)";

    try {
    pr = con.prepareStatement(query);
    Class.forName("com.mysql.jdbc.Driver");

    pr.setString(1, kategori);
    pr.setString(2, adi);
    pr.setString(3, fiyati);


    pr.executeUpdate();



    } catch (SQLException ex) {
    System.out.println("Malzeme eklenirken bir hata oluştu");
    } catch (ClassNotFoundException ex) {
    System.out.println("Dosya bulunamadı");
    }

    }
  • quote:

    Orijinalden alıntı: ugursalkimtas

    public void add_new_goods(String kategori, String adi, String fiyati) {

    String query= "Insert Into `stockfallow` (kategori, adi, fiyati) VALUES(?,?,?)";

    try {
    pr = con.prepareStatement(query);
    Class.forName("com.mysql.jdbc.Driver");

    pr.setString(1, kategori);
    pr.setString(2, adi);
    pr.setString(3, fiyati);


    pr.executeUpdate();



    } catch (SQLException ex) {
    System.out.println("Malzeme eklenirken bir hata oluştu");
    } catch (ClassNotFoundException ex) {
    System.out.println("Dosya bulunamadı");
    }

    }
    İlkinde "Class.forName("com.mysql.jdbc.Driver"); " komutunu yazmamıştım. Çünkü en başta bağlantı metodunda tanımlamıştım. Ancak sebebini tam anlayamadığım şekilde bu kodu yazmadığım sürece hata alıyorum.




  • Daha sonra da Jframe'e eklediğim depoya gönder butonuna da aşağıdaki event'i ekledim

    private void bt_acces_sendActionPerformed(java.awt.event.ActionEvent evt) {



    for (int i = 0; i < tbl_table.getRowCount(); i++) {

    String kategori= (String) tbl_table.getValueAt(i, 0);
    String adi= (String) tbl_table.getValueAt(i, 1);
    String fiyati= (String) tbl_table.getValueAt(i, 2);




    getConnections1.add_new_goods(kategori, adi, fiyati);

    }


    }
  • Umarım bu bilgiler yine aynı problemleri yaşayan arkadaşlara da yardımcı olur.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.