Perbezaan antara JDBC dan Hibernate

Perbezaan antara JDBC dan Hibernate

JDBC vs. Hibernate

Kesambungan Pangkalan Data Java (juga dikenali sebagai JDBC) adalah API yang khusus dibina untuk bahasa pengaturcaraan Java. Ia mentakrifkan bagaimana pelanggan dapat mengakses pangkalan data dengan menyediakan kaedah untuk menanyakan dan mengemas kini data dalam pangkalan data. Ia berorientasikan lebih khusus ke arah pangkalan data relasi. Ia mula diperkenalkan ke pasaran sebagai sebahagian daripada platform Java 2, Edisi Standard, Versi 1.1 (atau j2se). Ia dibundel bersama dengan pelaksanaan rujukan JDBC ke Jambatan ODBC, membolehkan sambungan dengan API ke mana -mana sumber data yang boleh diakses ODBC dalam persekitaran tuan rumah JVM.

Hibernate adalah perpustakaan pemetaan berorientasikan objek (atau perpustakaan Orm) yang khusus dibina untuk bahasa Java. Ia menyediakan rangka kerja untuk memetakan model domain berorientasikan objek ke pangkalan data hubungan tradisional. Ia juga menyelesaikan masalah ketidakcocokan impedans objek -iaitu, masalah di mana sistem pengurusan pangkalan data relasi (atau RDBMS) digunakan oleh program yang ditulis dalam bahasa atau gaya pengaturcaraan berorientasikan objek. Ia menyelesaikannya dengan menggantikan akses pangkalan data berkaitan kegigihan langsung dengan fungsi pengendalian peringkat tinggi. Perisian Sumber Terbuka Percuma dan Diagihkan di bawah Lesen Awam Umum GNU Less.

JDBC berfungsi dengan membenarkan pelbagai pelaksanaan wujud dan digunakan oleh aplikasi yang sama. Ia menyediakan mekanisme di mana pakej Java yang betul dimuatkan secara dinamik dan didaftarkan dengan pengurus pemandu JDBC -yang digunakan sebagai kilang sambungan, macam -macam, yang mewujudkan sambungan JDBC. Sambungan ini menyokong penciptaan dan pelaksanaan pernyataan. Mereka mungkin mengemas kini pernyataan (SQLS membuat, memasukkan, mengemas kini, dan memadam, sebagai contoh). Mereka juga boleh menjadi penyataan pertanyaan seperti pilih. Sambungan JDBC juga boleh memohon prosedur yang disimpan -iaitu prosedur yang disimpan dalam kamus data pangkalan data.

Hibernate terutamanya berfungsi untuk memetakan dari kelas Java ke jadual pangkalan data, serta dari jenis data Java ke jenis data SQL. Ia juga menyediakan pertanyaan dan kemudahan pengambilan data. Ia dapat menjana panggilan SQL, dengan itu melepaskan pemaju dari pengendalian set hasil manual dan penukaran objek. Ini menyimpan aplikasi mudah alih untuk semua pangkalan data SQL yang disokong melalui perpustakaan. Ia memetakan kelas Java ke jadual pangkalan data dengan mengkonfigurasi fail XML (di mana Hibernate dapat menjana kod sumber rangka untuk kelas ketekunan) atau menggunakan anotasi Java (yang menjadikan bekas tindakan moot). Hibernate juga menyokong pemetaan jenis nilai tersuai, yang menjadikan tiga senario khusus mungkin: mengatasi jenis SQL lalai, dipilih oleh hibernate ketika memetakan lajur ke harta; Pemetaan Java enum ke lajur seolah -olah mereka adalah sifat biasa; dan memetakan harta tunggal ke pelbagai lajur.

Ringkasan:

1. JDBC adalah API yang mentakrifkan bagaimana pelanggan boleh mengakses pangkalan data; Hibernate adalah perpustakaan ORM yang menyediakan rangka kerja untuk memetakan model domain berorientasikan objek ke pangkalan data hubungan tradisional.

2. JDBC membolehkan pelbagai pelaksanaan wujud dan dengan digunakan oleh aplikasi yang sama; Peta hibernate dari kelas java ke jadual pangkalan data.