JPA ve JDBC arasındaki fark nedir?


cevap 1:

JDBC, doğrudan bir Veritabanına bağlanmak ve buna karşı SQL çalıştırmak için standart bir araçtır, örneğin TableName, vb. Seçin. * Kullanıcının uygulamasında işleyebileceği veri setleri döndürülebilir ve güncelleme, silme Java DBA'nın (JPA sağlayıcıları dahil) arkasındaki temel teknolojilerden biridir.

Geleneksel JDBC uygulamalarıyla ilgili önemli bir sorun, kullanıcının mantığın SQL ile karıştırıldığı, veri kümeleri ve nesneler arasında çok fazla eşleme gerçekleştiği vb.

JPA Nesne İlişkisel Haritalama için resmi bir araçtır. JPA, kullanıcının kod ve veritabanı tablolarındaki nesneler arasında eşleme yapmasını sağlayan bir teknolojidir. JPA, SQL'i geliştiriciden "gizleyebilir", böylece Java sınıfları içinde tüm ilgilendikleri ve sağlayıcı bunları kaydetmenize ve uzaktan yüklemenize izin verir. Çoğunlukla, JPA sağlayıcısına söylemek için XML eşleme dosyaları veya ayarlayıcılar ve alıcılar üzerindeki ek açıklamalar kullanılabilir. kullanıcı nesnesindeki hangi alanların DB'deki alanlarla eşleştiğini gösterir. hazırda bekleme en popüler JPA sağlayıcısıdır.

OpenJPA, toplink vb. gibi diğer bazı örnekler.

Hazırda bekletme ve JPA için diğer popüler sağlayıcılar SQL yazar ve DBBC'den DB'ye okuma ve yazma için JDBC kullanır.

Teşekkür ederim.

Cevabımı beğenirseniz, oyunuzu kaldırın.


cevap 2:

U bir acemi iseniz her ikisi de farkı bw anlamak biraz karmaşık olurdu. Bence ilk önce JDBC ve Hibernate arasındaki farkı anlayarak başlamalısınız. Umarım JDBC'nin ne olduğunu bilirsiniz, hala bir breif açıklaması olarak: JDBC, Java Veritabanı Bağlantısı anlamına gelir. JDBC, sorguyu db ile bağlamak ve yürütmek için bir Java API'sıdır. Sürücülerin db ile bağlantı kurmasını sağlar. Herhangi bir ilişkisel veritabanında depolanan sekmeli verilere erişmek için JDBC API'sini kullanabilirsiniz. JDBC API yardımıyla veritabanından veri kaydedebilir, güncelleyebilir, silebilir ve getirebiliriz.

Hazırda Beklet nedir? JDBC'den farklı bir çerçevedir, u kullanmadan önce Hazırda Bekleme kitaplıklarını içe aktarırken, JDBC J2SE'nin bir parçasıdır. Hazırda Bekletme, JDBC için geliştirilenle aynı şeyi yapar, ancak Hazırda Bekletme, JDBC'nin ileri düzeyidir diyebiliriz. Hazırda bekletme, veritabanıyla etkileşim kurmak için Java uygulamasının geliştirilmesini kolaylaştırır. Bir ORM aracıdır, java nesnelerini db tablolarıyla eşleştirir. Bir java sınıfı, db'deki bir tabloyu temsil edebilir. Örneğin, "emp_26" tablosunu Hazırda Bekleme'de Employee sınıfı olarak eşlediyseniz, empl_26 tablosundan tüm çalışanları getirmek için basit bir nesne tabanlı sorgu yazarsınız: "Employee" // in Hibernate "içinde emp_26" dan * seçin * JDBC.

Hibernate'in önbellek, ilişkilendirme eşleme, miras eşleme, HQL, sayfalandırma ve JDBC'de bulunmayan daha birçok özelliği vardır.

JPA'ya gelince, bu bir özellik, bir dizi sınıf ve arayüz. JPA'nın uygulanması için bir araca ihtiyacı vardır ve bu araç Hazırda Bekletme olabilir. JPA'yı uygulayarak, Hibernate'in yaptığıyla aynı şeyi yapabilirsiniz, ancak JPA. formatında JPA bir dans ise, o zaman bir dans aşaması sağlamak için Hibernate veya başka bir araç gerekir. Bu arada, Hibernate'in JPA olmadan dans edemeyeceği anlamına gelmez, Hibernate'in de kendi dansı vardır.


cevap 3:

JDBC, doğrudan bir DB'ye bağlanmak ve buna karşı SQL çalıştırmak için bir standarttır - örn. SELECT * FROM USERS, vb. Uygulamanızda işleyebileceğiniz veri kümeleri iade edilebilir ve INSERT, DELETE, saklı yordamlar, vb çalıştırmak. Çoğu Java veritabanı erişim (JPA sağlayıcıları dahil) arkasındaki temel teknolojilerden biridir.

Geleneksel JDBC uygulamalarıyla ilgili sorunlardan biri, veri kümeleri ve nesneler arasında çok sayıda eşlemenin gerçekleştiği, mantığın SQL ile karıştırıldığı vb.

JPA, Nesne İlişkisel Eşleme için bir standarttır. Bu, kod ve veritabanı tablolarındaki nesneler arasında eşleme yapmanıza izin veren bir teknolojidir. Bu, SQL'i geliştiriciden "gizleyebilir", böylece ilgilendikleri tüm Java sınıfları olur ve sağlayıcı bunları kaydetmenize ve sihirli bir şekilde yüklemenize izin verir. Çoğunlukla, XML eşleme dosyaları veya alıcılar ve ayarlayıcılar üzerindeki ek açıklamalar, JPA sağlayıcınıza nesne üzerindeki hangi alanların DB'deki hangi alanlarla eşlendiğini bildirmek için kullanılabilir. En ünlü JPA sağlayıcısı Hazırda Bekleme'dir, bu nedenle somut örneklere başlamak için iyi bir yerdir.

Diğer örnekler arasında OpenJPA, toplink vb.