Java Eclipse Hibernate Tools ile Tablo Entity(ORM) Sınıflarını Oluşturma

Java Eclipse Hibernate Tools ile Tablo Entity(ORM) Sınıflarını Oluşturma

Hibernate ve Tablo Entity Hakkında

Hibernate Tools ile Tablo Entitiy sınıflarını oluşturmadan önce kısa bilgi verelim.
Hibernate bir nesne/İlişkisel (Object/Relational Mapping) aracıdır.
ORM(Object/ Relational Mapping), object oriented dillerdeki nesnelerin, ilişkisel veritabanindaki (Relational Database) kayıtlara nasıl karşılık geldiğini yürüten bir teknolojidir.

Hibernate bizden veritabanındaki işlemleri yapmak için java kısmında tabloların karşılığı olan bir Entitiy (Model) bekler.

Örneğin,

User adında bir tablo > Ad,Soyad şeklinde alanları olsun

Hibernate User adında(başka isimde olabilir mapping ile bağlanır) bir sınıf bekler ve şu değişkenler olmalıdır > Ad,Soyad

Bu yazıda Hibernate Tools ile Oracle Veritabanı bağlantısı kullanarak  Tablo Entity sınıflarını oluşturacağım

Hibernate Tools kullanımı

 

1 ) Database Connection Tanımlanması

İlk olarak  ben Oracle DB kullanacağım.Window > Perspective > Open Perspective > Other 

Database Developtment

Database Connection alanımız boş. > New

Ben Oracle veritabanı kullanacağım.Name alanını da atakancoban olarak düzenledim

Bu alanda ben önceden oluşturduğum için dolu geldi. Sizde boş olmalı sağdaki Artı butonu ile yeniden yapacağım.

Driver versiyon seçelim ben 11 seçtim.

Jar/List alanında ojdbc14.jar şeklinde bir jar gösteriyor.Ben sistemimdeki projemde kullandığım ojdbc6 jar dosyamı göstereceğim.Add Jar butonu ile kendi oracle jar dosyamızın yolunu gösterelim.ocdbc14.jar dosyasını remove edelim.

Jar yolum bu şekilde.

Burada jar içinde connection bilgilerimizi girelim

Bilgilerimizi de girdikten sonra Ok diyelim ve Database Connection hazır. Şimdi Hibernate Tools kullanımına geçebiliriz.

 

2 ) Hibernate Tools Kullanımı ve Tablo Entity oluşturulması

İlk olarak Window > Perspective > Open Perspective > Other

Open Perspective > Hibernate seçelim ve OK

Hibernate Configuration alanımız ekrana geldi ve şuan tanımlı bir configuration bulunmuyor.

Sağ tık > Add Configuration 

Edit Configuration >

Annotation radio butonunu seçelim.
Project alanında projemizi seçelim.
Database Connection alanında  1.Başlıkta anlattığım ve oluşturduğum atakancoban isimli connectionu seçelim.
Son olarak Configuration File oluşturmak için > Setup 

Create New >

Ben yazıyı yazmadan önce oluşturmustum o nedenle zaten mevcut şeklinde bir uyarı var sizde bu olmayacak.
main>java içinde oluşturalım.Sizde NEXT açık durumda olacak.

Get Values from Connection seçelim

Oluşturduğumuz atakancoban adlı connectiondan bilgileri almasını sağlayacağız.

Hibernate Configurations alanında configurationumuz oluştu.

 

hibernate xml dosyamız da oluştu

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.connection.driver_class">oracle.jdbc.OracleDriver</property>
        <property name="hibernate.connection.url">jdbc:oracle:thin:@ipadresi:1521:SID</property>
        <property name="hibernate.connection.username">username</property>
         <property name="hibernate.connection.password">password</property>
        <property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
    </session-factory>
</hibernate-configuration>

 

 

Window>Perspective>Open Perspective>Hibernate seçelim ve ekranda hibernate tool menüsünü seçelim

Hibernate Code Generation aracımızda > New 

Hibernate Tools

Output directory olarak ben ana dizini gösterdim.
Package seçeceğiniz için entity sınıflarınız java/com/atakancoban/orm altına çıkacaktır.Ona göre paket adına göre ayarlayın

revenge.xml alanı ben önceden oluşturmuştum.yeniden oluşturacağım. > Setup

Diğer alanları ekrandaki gibi düzenleyelim.

Create New>

Bu ekran Reverse Engineering yapılmasını sağlayacak ayar dosyamızı oluşturmaya yarar.Benim veritabanım büyük ve Refresh kısmında donma oluyor.Ben Schema ve Tablo adımı biliyorum. İnclude diyerek bir satır ekledim. Table alanında .* yazarak tüm tabloları oluştur diyebilirsiniz.Bende tablo çok olduğu için test tablomu(ZZ_ATAKAN_PERSON) Entitiy oluştur şeklinde örnek yapacağım.

 

revenge.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-reverse-engineering PUBLIC "-//Hibernate/Hibernate Reverse Engineering DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd" >

<hibernate-reverse-engineering>
  <table-filter match-schema="FCBSADM" match-name="ZZ_ATAKAN_PERSON"/>
 
</hibernate-reverse-engineering>

revenge.xml oluştuktan sonra ekranı resimdeki gibi işaretleyelim.

Exporters kısmında ben ENTITIY yani (Domain Code) olan alanı seçtim.

Xml ile mapping yapmayacağım için seçmedim.Kullancaksanız seçebilirsiniz.

Dao Sınıfları
Dao Sınıfları

Son olarak run diyelim resimdeki gibi seçtiğim alana Hibernate tools ile tablo entitiy sınıfımı oluşturdum

@Entitiy sınıfımız hazır.

 

Bu @Entity sınıfını kullanarak hibernate CRUD işlemleri (Veritabanına kayıt ekleme, Kayıt silme , Kayıt Güncelleme ve Kayıtları listeleme) örneği yaptım. >>  (Yazıyı Oku)

Spring Framework ve Hibernate ile ilgili uzmanlık gerektiren yardım için > Şükrü Çakmak

 

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir