CRUD menggunakan Hibernate
Sekarang saya akan membuat CRUD dengan menggunakan Hibernate Framework. Untuk membuat CRUD di hibernate sebenarnya sangat mudah, karena kita tidak perlu menggunakan query tetapi pemograman SQLnya masih tetap ada tapi nanti kita akan bahas di materi yang namananya Hibernate Query language atau yang lebih dikenal HQL.
Sebelum membuat CRUD Operation biasanya saya akan membuat interface seperti berikut:
Setelah membuat interface, biasanya saya juga membuat DAO (Data Access Object) yang mengimplement dari Repository tersebut:
Insert Data
Ok sekarang kita buat unit testing dengan nama TestSaveMahasiswa
dalam package com.maryanto.dimas.bootcamp.test
seperti berikut:
Setelah itu coba di run file, maka outpunya seperti berikut:
Jan 03, 2021 12:34:23 PM org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator initiateService
INFO: HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
Hibernate:
insert
into
master.mahasiswa
(is_active, bio, created_by, created_date, nama_mahasiswa, nim_mahasiswa, tanggal_lahir, tahun_masuk, kode)
values
(?, ?, ?, ?, ?, ?, ?, ?, ?)
[main] INFO com.maryanto.dimas.bootcamp.test.TestSaveMahasiswa - mahasiswa saved: Mahasiswa(kode=1, nim=10511148, nama=Dimas Maryanto, thnMasuk=2015, tglLahir=1999-09-09, createdDate=2021-01-03T12:34:23.840972, createdBy=admin, active=true, biodata=null)
[main] INFO com.maryanto.dimas.bootcamp.test.TestSaveMahasiswa - destroy hibernate session!
Untuk mengecek datanya bener telah diinput, coba select * from master.mahasiswa
Update Data
Ok sekarang kita buat unit testing dengan nama TestUpdateMahasiswa
dalam package com.maryanto.dimas.bootcamp.test
seperti berikut:
Setelah itu coba di run file, maka outpunya seperti berikut:
Jan 03, 2021 12:36:06 PM org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator initiateService
INFO: HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
Hibernate:
update
master.mahasiswa
set
is_active=?,
bio=?,
created_by=?,
created_date=?,
nama_mahasiswa=?,
nim_mahasiswa=?,
tanggal_lahir=?,
tahun_masuk=?
where
kode=?
[main] INFO com.maryanto.dimas.bootcamp.test.TestSaveMahasiswa - mahasiswa was updated: Mahasiswa(kode=1, nim=10511150, nama=Dimas Maryanto (updated), thnMasuk=2014, tglLahir=1999-09-09, createdDate=2021-01-03T12:36:06.973299900, createdBy=admin, active=true, biodata=null)
[main] INFO com.maryanto.dimas.bootcamp.test.TestSaveMahasiswa - destroy hibernate session!
Process finished with exit code 0
Find By Id
Ok sekarang kita buat unit testing dengan nama TestFindByIdMahasiswa
dalam package com.maryanto.dimas.bootcamp.test
seperti berikut:
Setelah itu coba di run file, maka outpunya seperti berikut:
Jan 03, 2021 12:36:43 PM org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator initiateService
INFO: HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
Hibernate:
select
mahasiswa0_.kode as kode1_0_0_,
mahasiswa0_.is_active as is_activ2_0_0_,
mahasiswa0_.bio as bio3_0_0_,
mahasiswa0_.created_by as created_4_0_0_,
mahasiswa0_.created_date as created_5_0_0_,
mahasiswa0_.nama_mahasiswa as nama_mah6_0_0_,
mahasiswa0_.nim_mahasiswa as nim_maha7_0_0_,
mahasiswa0_.tanggal_lahir as tanggal_8_0_0_,
mahasiswa0_.tahun_masuk as tahun_ma9_0_0_
from
master.mahasiswa mahasiswa0_
where
mahasiswa0_.kode=?
[main] INFO com.maryanto.dimas.bootcamp.test.TestSaveMahasiswa - mahasiswa by id: Mahasiswa(kode=1, nim=10511150, nama=Dimas Maryanto (updated), thnMasuk=2014, tglLahir=1999-09-09, createdDate=2021-01-03T12:36:06.973300, createdBy=admin, active=true, biodata=null)
[main] INFO com.maryanto.dimas.bootcamp.test.TestSaveMahasiswa - destroy hibernate session!
Delete Data
dan yang terkahir kita buat unit testing dengan nama TestDeleteMahasiswa
dalam package com.maryanto.dimas.bootcamp.test
seperti berikut:
Setelah itu coba di run file, maka outpunya seperti berikut:
Jan 03, 2021 12:37:09 PM org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator initiateService
INFO: HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
Hibernate:
select
mahasiswa0_.kode as kode1_0_0_,
mahasiswa0_.is_active as is_activ2_0_0_,
mahasiswa0_.bio as bio3_0_0_,
mahasiswa0_.created_by as created_4_0_0_,
mahasiswa0_.created_date as created_5_0_0_,
mahasiswa0_.nama_mahasiswa as nama_mah6_0_0_,
mahasiswa0_.nim_mahasiswa as nim_maha7_0_0_,
mahasiswa0_.tanggal_lahir as tanggal_8_0_0_,
mahasiswa0_.tahun_masuk as tahun_ma9_0_0_
from
master.mahasiswa mahasiswa0_
where
mahasiswa0_.kode=?
Hibernate:
delete
from
master.mahasiswa
where
kode=?
[main] INFO com.maryanto.dimas.bootcamp.test.TestSaveMahasiswa - mahasiswa was delete: Mahasiswa(kode=1, nim=10511150, nama=Dimas Maryanto (updated), thnMasuk=2014, tglLahir=1999-09-09, createdDate=2021-01-03T12:36:06.973300, createdBy=admin, active=true, biodata=null)
[main] INFO com.maryanto.dimas.bootcamp.test.TestSaveMahasiswa - destroy hibernate session!
Yuk simak juga videonya,
Dan jika temen-temen belajar hal baru kali ini jangan lupa buat Like, Subcribe, dan Share ke temen kalian. Terimakasih!!!