Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

JDBC VS Hibernasi

Menjawab masalah yang tercantum di atas:

1. Hibernate tidak dapat terhubung dengan database "Yang Ada". Itu selalu mencoba untuk membuatnya sendiri.

Ini salah. Hibernasi bisa terhubung ke database yang ada, dan tidak selalu mencoba untuk membuatnya kembali. Anda hanya harus mengubah parameter seperti hbm2ddl. auto .

2. Basis data kami dapat diakses oleh aplikasi yang sama yang berada di platform yang berbeda (cloud, server, VPS, Personal Computer). Hibernate dapat membuat masalah karena caching dalam situasi ini.

Hibernate memiliki cache yang dapat disesuaikan, jadi ini juga tidak menjadi masalah.

3. Kami tidak pernah suka memberikan "pekerjaan pembuatan tabel" ke kode java. Kami selalu membuat tabel secara manual.

Tidak masalah. Lihat hal.1 di atas. Selain itu, ada beberapa pustaka praktis untuk pembuatan dan pembaruan tabel tidak langsung (mis. liquibase ) yang dapat digunakan secara berpasangan dengan hibernasi dengan sempurna.

4. Kita mungkin harus menggunakan pernyataan SQL yang sangat panjang dan kompleks. Terakhir kali kami menggunakan pernyataan dengan lebih dari 150 baris, menggabungkan lebih dari 20 tabel. Kami ragu apakah kami akan menghadapi masalah dalam hal ini saat Hibernasi.

Anda selalu dapat menggunakan panggilan JDBC langsung dan memanggil kueri SQL asli melalui hibernasi, jika diperlukan.

5. Kode SQL kami bagus dan standar. Kode yang dihasilkan hibernasi tampaknya agak kotor bagi kami.

Sekali lagi, jika Anda harus menjalankan beberapa logika kode SQL yang rumit alih-alih hibernasi yang dibuat secara otomatis - Anda dapat melakukannya.

6. Kami selalu menggunakan MySQL. Jangan pernah menggunakan DB lain.

Tidak masalah sama sekali. Hibernate memiliki dukungan dialek MySQL khusus:org.hibernate.dialect.MySQLDialect .

7. Aplikasi yang kami buat membutuhkan keamanan maksimal, terkait dengan medis. Jika setidaknya satu catatan data bocor, kita selesai.

Masalah keamanan tidak terkait dengan teknik ORM. Hibernate hanyalah lapisan berorientasi objek yang logis dan nyaman antara panggilan JDBC database murni dan alat pemrogram. Itu tidak mempengaruhi keamanan jaringan umum.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menyimpan karakter non-bahasa Inggris?

  2. Tampilan MySQL dan penggunaan indeks

  3. Panduan Merancang Database Untuk Kuis Di MySQL

  4. ORDER_BY tanggal LIMIT 1

  5. Batch Pernyataan yang disiapkan Java MySQL