Hibernate Dersleri‘ne devam ediyoruz. Önceki derslerde işlediğimiz ilişki çeşitlerinde cascade=CascadeType.ALL gibi ifadeler kullandık. Bu cascade dediğimiz niteliğin ne olduğuna ve çeşitlerinden bahsedeceğiz. Cascade JPA standartıdır. Java sınıflarımızdaki ilişkilerin davranışlarını cascade niteliğini kullanarak ayarlarız. “İlişki davranışları” kavramını biraz açıklayacak olursak, bir değer silinirse o veri ile ilişkili olan kayıtların etkilenmesini ya da etkilenmemesi işlemlerini Java nesneleri olarak yönetilmesini […]
Hibernate Dersleri‘ne devam ediyoruz. Bu yazıda veritabanı ilişkilerinden çoka çok ilişkiyi inceleyeğiz. Çoka çok ilişkinin Hibernate ile olan yapısı için bir senaryo gerçekleştireceğiz. Bu senaryoda yazar ve kitaplar bulunmaktadır. @Entity public class Yazar { private Long yazarId; private String yazarAdi; @Id @GeneratedValue(strategy=GenerationType.AUTO) public Long getYazarId() { return yazarId; } public void setYazarId(Long yazarId) { this.yazarId […]
Hibernate Dersleri‘ne devam ediyoruz. Tablolar arası ilişkilerden bire çok ilişkiyi yapısının Hibernate (JPA) ile nasıl yapıldığını inceleyeceğiz. Bu ilişkiyi incelememiz için bir üyenin birden fazla telefon numaraları olabileceği senaryosu üzerinden inceleyelim. Telefon sınıfını oluşturalım. @Entity public class Telefon implements Serializable { @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name = “TELEFON_ID”) private Long id; @Column(name = “Numara”) private […]
Hibernate Dersleri‘ne devam ediyoruz. İlişkisel veritabanınlarında tablolar arasında ilişkiler kurarız. Hibernate (daha doğrusu JPA) kullanarak tablolar arasındaki ilişkileri sağlayabiliyoruz. Bu yazıda ilişkilerden Bire bir ilişkiyi inceleyeceğiz. Bire bir ilişkide bir tablodaki bir kaydın ilişkide olan diğer tabloda bir kaydı bulunur. Bire bir ilişkiyi bir örnek yaparak açıklayalım. Bir kişi var be bu kişinin sadece bir […]
Hibernate Dersleri‘ne devam ediyoruz. Hibernate, bizim yazılımımız ile veritabanı arasındaki bağlantıyı sağlar. Bu bağlantı biz hangi veritabanını kullanırsak kullanalım programlama kısmında aynı olsada, Hibernate için durum biraz farklıdır. Yazılımız ile veritabanı arasındaki uyumu sağlayan Hibernate’in veritabanından veritabanına bu çevrimi sağlayan yapısı farklılık göstermektedir. Bu farklılığı önceki dersimizde işlediğimiz yapılandırma dosyamızda <property name=“hibernate.dialect”> kısmında hangi veritabanını kullanıyorsak […]
Hilbernate Dersleri‘ne devam ediyoruz. Hibernate uygulamalarında JPA Anotasyonu kullanabilmekteyiz. JPA anotasyonları ile birlikte Persist sınıflarımızın alanlarına gerekli tanımlamalarını yaparak veritabanında olmasını istediğimiz özellikleri belirtmemiz mümkün olmaktadır. Persist sınıfımızda kullanacağımız anotasyonlar aşağıdaki gibidir. @Entity Entity anotasyonu bir Java Class’ımızın persist class olduğunu belirtir. Hibernate bu anotasyonu gördüğü an veritabanında bir tablo oluşturacağını bilir. @Table Table anotasyonu […]
Hibernate Dersleri‘ne devam ediyoruz. Java yazılımımızda kullandığımız değişkenlerin Hibernate aracılığı ile veritabanına alan olarak eklenmesi sırasında değişken tiplerinin Hibernate tarafından eşlenmesi işlemini inceleyeceğiz. Sql tipleri ile Java değişken tipi arasında yaptığı eşleştirme görevi (Mapping Types) gören Hibernate’in tiplerin eşleşmelerine karşılık verdiği Java tipleri aşağıdaki gibidir. Eşleşme Tipi Java Tipi Sql Tipi integer java.lang.Integer INTEGER long […]
Hibernate Dersleri‘ne devam ediyoruz. Bu yazıda Hibernate Query Language nedir açıklayacağız. HQL yani Hibernate Query Language nesneye yönelik sorgulama dilidir. Bu sorgulama dilinin avantajı nesnesel olması ve bizim java sınıflarımız ile ilişkili bir yapı kurabilmemizi mümkün kılmaktadır. “Code first” yapısına daha uygun olan HQL bizi sadece koda odaklanmamızı da sağlıyor. Sorgulama işlemlerimizi SQL’de olduğu gibi […]
Hibernate Derleri’ne devam ediyoruz. Veritabanımızda kayıtlı olan bilgileri Java nesnemize alabilmek için Hibernate’nin Get komutunun nasıl kullanıldığına bakacağız. Çok sık kullanacağımız get işleminin nasıl olduğuna bakalım. Yapacağımız örnekte kisi id’si 3 olan kisinin veritabanımızdan bilgilerini getirip konsol ekranına kişinin adını ve kişinin soyadını yazacağız. long id = 3; Session session = hibernateUtil.getSessionFactory().openSession(); Kisi kisi=(Kisi) session.get(Kisi.class, […]
Hibernate Dersleri‘ne devam ediyoruz. Hibernate ile veri kaydetme ve silme işlemlerini yaptık. Bu yazıda ise Hibernate ile veritabanımızda bulunan kayıtların güncelleştirmek için ne gibi işlemler yapacağız görelim. Önceki derslerde de izlediğimiz gibi Kisi sınıfımız üzerinden işlemlerimize devam edeceğiz. Kişinin id üzerinden ad alanını güncelleyeceğiz. long id = 3; Session session = hibernateUtil.getSessionFactory().openSession(); Transaction transaction = […]