Merhaba arkadaşlar, bu yazımda JPA ile veritabanına ilk kayıt işlemini yapacağız. Model sınıfımızı yazalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
package _002_model; import javax.persistence.Entity; import javax.persistence.Id; @Entity public class Personel { @Id private int id; private String isim; private String soyisim; private String adres; public Personel(int id, String isim, String soyisim, String adres) { this.id = id; this.isim = isim; this.soyisim = soyisim; this.adres = adres; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getIsim() { return isim; } public void setIsim(String isim) { this.isim = isim; } public String getSoyisim() { return soyisim; } public void setSoyisim(String soyisim) { this.soyisim = soyisim; } public String getAdres() { return adres; } public void setAdres(String adres) { this.adres = adres; } } |
Personel adında bir Entity sınıfı oluşturuyoruz. Entity sınıflarımız basit pojo sınıflarıdır. Personel sınıfımızı Entity sınıfı yapmak için @Entity ve @Id notasyonlarını kullandım. Burada @Entity notasyonu mu sınıfın bir Entity sınıfı olacağını belirtiyor, @Id notasyonu ise bir id olmak zorunda olduğunu ve hangi değişkenin @Id olarak kullanılacağını belirtmek için kullanılır.
Şimdi Test sınıfımıza bakalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
package _002_test; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.EntityTransaction; import javax.persistence.Persistence; import _002_model.Personel; public class Test { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("JPA_Tutorial"); EntityManager em = emf.createEntityManager(); EntityTransaction transaction = em.getTransaction(); Personel personel = new Personel(1, "Abdullah Furkan", "KOC", "Istanbul"); transaction.begin(); em.persist(personel); transaction.commit(); em.close(); emf.close(); } } |
EntityManager üretmek için EntityManagerFactory oluşturduk ve hangi Persistence.xml dosyasını kullanacağını belirttik. Oluşturduğumuz EntityManagerFactory ile bir adet EntityManager ürettik ve işlemlerimizi bu ürettiğimiz nesne ile yaptık. EntityTransaction, nesnesi transaction işlemlerini yönetmek için kullandığım nesnedir.
1 2 3 |
transaction.begin(); em.persist(personel); transaction.commit(); |
Görüldüğü gibi bir Personel nesnesi üretildi ve transaction başlatılarak bu nesne tablomuza insert edilerek commitlendi.
Persist() => Bir nesneyi ilk olarak tablomuza kayıt işlemini yapmamızı sağlar bir nevi hibernate deki save() metodudur.
En son oluşturduğumuz EntityManager ve EntityManagerFactory nesnelerini kapattık. Projemizi run ettikten sonraki tablomuzun görüntüsü:
Bu yazımı burada bitiriyorum diğer yazılarımda görüşmek üzere….