Memahami fungsi hibernate.cfg.xml
Konfigurasi Hibernate pada dasarnya ada 2 jenis konfigurasi yaitu dengan Source Code java atau saya lebih sering sebut Java Config dan XML (hibernate.cfg.xml). Jaman sekarang Konfigurasi dengan XML udah sangat jarang karena mengikuti style Java yang berbau annotation (@Annotations
). Tpi gak apa karena kita mau niatnya belajar jadi Ya ikutin aja ya… karena klo kita menggunakan XML juga gak ada ruginya kok toh XML juga lebih mudah dibaca dibandingkan Java Config.
Ok langsung aja buka lagi file hibernate.cfg.xml
nya, kalo kita lihat seperti berikut:
Nah jadi konfigurasi yang wajib ada yaitu ada 2 hal yaitu
hibernate.dialect
hibernate.connection.*
hibernate.dialect
Karena hibernate memiliki support database yang lumanyan banyak, maka kita harus tentukan dialect
atau analogikanya seperti ini contohnya setiap negara punya bahasa masing masing di ibaratkan dengan DBMS seperti indonesia berhasasa indonesia sedangkan jepang berbahasa jepang tatapi bahasa internasinal tetap bahasa inggris. konsep tersebut juga serupa dengan hibernate ibaratnya bahasa internasinal. jadi apapun databasenya Hibernate harus menentukan targetnya akan di proses ke database apa atau bisa dikatakan Translator. itulah fungsi dari hibernate.dialect
beberapa hibernate.dialect
yang paling sering digunakan atau berdasarkan database yang popular
Database Name | hibernate.dialect |
---|---|
Oracle | org.hibernate.dialect.OracleDialect |
MySQL | org.hibernate.dialect.MySQLDialect |
SQL Server | org.hibernate.dialect.SQLServerDialect |
PostgreSQL | org.hibernate.dialect.PostgreSQLDialect |
HSQL | org.hibernate.dialect.HSQLDialect |
DB2 | org.hibernate.dialect.DB2Dialect |
hibernate.connection.*
Untuk hibernate.connection
ini pada dasarnya Untuk menentukan username, password, nama database dan lain-lain yang berkaitan dengan koneksi ke database.
hibernate.show_sql
Property ini fungsinya untuk menampilkan SQL yang di execute oleh hibernate seperti Data Definition Language (CREATE
, ‘ALTER’, dan ‘DROP’), Data Manipulation Language (INSERT
, ‘UPDATE’, dan DELETE
) serta perintah Querty (‘SELECT’).
berikut perintahnya:
hibernate.show_sql
hanya bernilai:
true
(untuk menampilkan SQL statement)false
(untuk mengembungikan SQL statement)
hibernate.hbm2ddl.auto
Property ini digunakan untuk meng-generate table yang dibuat berdasarkan JavaBeans atau POJO yang menggunakan mapping hibernate (hbm.xml) atau annotation (@Entity
).
Berikut perintahnya:
hibernate.hbm2ddl.auto
ini pada dasarnya terdapat 4 yaitu:
create
, ketikaSessionFactory
dipanggil maka dia akancreate table
tetapi setelahSessionFactory
berakhir atau diclose
datanya akan dihapus (delete
).create-drop
, ketikaSessionFactory
dipanggil maka dia akandrop table
yang ada setelah itu baru diacreate table
update
, ketikaSessionFactory
dipanggil pertama kali maka dia akancreate table
tetapi ketika ke dua kalinya sampai seterunya maka jika table dalam databasenya udah ada maka diaupdate
atau perintah sqlnyaalter
tetapi jika kalo yang berubah adalah field atau column atau atribute maka dia akan membuat field tersebutadd column
bukanalter column rename
validate
, ketikaSessionFactory
dipanggil maka dia tidak akan melakukan generate karena fungsinya hanya melakukan check aja. keteka table yang di panggil tidak ada maka terjadi error.
Yuk simak juga videonya,
Dan jika temen-temen belajar hal baru kali ini jangan lupa buat Like, Subcribe, dan Share ke temen kalian. Terimakasih!!!