Hızlı Konu Açma

Hızlı Konu Açmak için tıklayınız.

Son Mesajlar

Konulardaki Son Mesajlar

Reklam

Forumda Reklam Vermek İçin Bize Ulaşın

Java : Hibernate konfigurasyonlari ve ornek uygulama

BlackKey

Üye
Fenerbahçe
Kayıtlı Üye
Katılım
12 Eylül 2014
Mesajlar
167
Tepkime puanı
0
Puanları
0
Daha sonra, Hibernate Reverse Engineering Wizard ile Reveng.xml'imizi üretelim.


Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun




Şimdi sıra POJO(Plain Old Java Object) 'yu kullanarak Database Tablomuz ile Java sınıfı arasındaki ilişkiyi xml üzerinde mapping yani eşleştirme işlemi için Database tablomuz TEST yani Test.hbm.xml'i üretmeye. Xml ile birlikte Test sınıfımızda Hibernate framework'u sayesinde otomaik olarka üretilecektir. Üretilen Test sınıfı klasik bir Java Bean'dir. Java Bean ile ilgili makale ve diğer Java class'larından farkına buradan

Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun

.

Şimdi sırasıyla,


Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun




Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun

yapısındaki Controller mekanizmasının basit bir örneği, Database sınıf objemiz Test ile HibernateUtil sınıfının ilişkisi ile verileri datastructure (List,ArrayList) ile modelliyoruz. Verilerin listelenmesi ve veri kaydedilmesi işlemleri, bu sınıf içinde yapıyoruz.

DataController.java sınıfımız.
PHP:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Controller;

import Model.HibernateUtil;
import Model.Test;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;

/**
*
* @author turgay
*/
public class DataController { 

public List listCourses() {
//session değerine Hibernate'ın Factory'ı şemasından açılan database session'ının atanması
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = null;//transaction(hibernate)
Test course = new Test();//pojo objesinin oluşturduğu Test sınıfı
List val = new ArrayList();
try {
transaction = session.beginTransaction();//session objesini transaction objesine atamak
List courses = session.createQuery("from Test").list();//query'den dönen sonuçları List içine doldurmak
for (Iterator iterator = courses.iterator(); iterator.hasNext() {
course = (Test) iterator.next();
val.add(course);//Donen degerleri Test objesine cast edip, list içine atama
}
transaction.commit();//baglantıyı commit etmek
} catch (HibernateException e) {
transaction.rollback();//hata oluşursa baglantıdaki değerleri rollback ile geri almak
e.printStackTrace();
} finally {
session.close();//baglantıyı kapatmak
return val;
}
}

public Integer saveCourse(Integer id,String courseName) {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = null;
Integer courseId = null;
try {
transaction = session.beginTransaction();
Test course = new Test();
course.setName(courseName);
course.setId(id);
courseId = (Integer)session.save(course); 
transaction.commit();
System.out.println(course.getId() + " " + course.getName() + " kaydedildi.");
} catch (HibernateException e) {
transaction.rollback();
e.printStackTrace();
} finally {
session.close();
}
return courseId;
}
}
Implementasyon sınıfı

TestHibernate.java

PHP:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Implementation;

import Controller.DataController;
import Model.Test;
import java.util.List;

/**
*
* @author turgay
*/
public class TestHibernate {

/**
* @param args the command line arguments
*/

public static **** main(String[] args) {
// TODO code application logic here
DataController mt = new DataController();//DataController sınıfımızdan mt objesi türettik. Diğer adı ile kompozisyon 
List<Test> courses = mt.listCourses(); //listCourses metoduyla List dönen değerleri Data Model'imize atıyoruz. 
//mt.saveCourse(6, "Hibernate"); //Yeni ders kaydediyoruz.
System.out.println(" ID " + " NAME");
for (Test object : courses) {//Data Model'imizde listemizdeki değerleri yazdırıyoruz.
System.out.println(object.getId() + " "+object.getName());
}
}

}

İşlemlerin sonuç ekranları :
Kaydetmek

Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Listelemek


Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun




Linkleri sadece kayıtlı üyeler görebilir. Linkleri görebilmek için Üye Girişi yapın veya ücretsiz olarak Kayıt Olun



Uygulama ve anlatım tamamı ile bana aittir. Önce kendi websitemde ve devamında wardom'da paylaşmaktan keyif duyarım


Bir sonraki makalem, JSF (view framework) çatısı ile Hibernate (database model framework) çatısının beraber kullanımı olacaktır. Örnek bir web uygulamasıda içinde olacaktır.
 

Users Who Are Viewing This Konu (Users: 0, Guests: 1)

Üst