Java ile Kalıcılık (Persistence) - Hibernate

0
malkocoglu
Java programlarımızı yazarken nesneler ile uğraşırız. Bu nesneleri veri tabanına yazmamız gerekince, ilişkisel dünyaya ve kavramlarına atlamış oluyoruz. İlişkisel ve nesnesel modeller birbirinden farklılar, ve sonuç, "Model Uyuşmazlığı" denen kodlama stillerindeki anlaşmazlık olmaktadır. Çözüm: Java icinde SQL yazmadan, nesneleri tablolara eşleme dosyaları ile bağlamak, ve bu bağ üzerinden otomatik SQL üretmek. Kalıcılık (persistence) araçları burada yardımcı oluyor. Java dünyasında kalıcılık araçlarından Hibernate'i aşağıdaki yazı dizisinde tanıtıyoruz.
SELECT / UPDATE / INSERT / DELETE Yazmaktan Kurtulun
Hibernate ve Yabancı Anahtarlar (Foreign Keys)
Hibernate İle Nesne Okumak
Sorgulama ve Hibernate

Görüşler

0
FZ
Çok çok önemli bir konu olduğunu düşünüyorum, dolayısı ile makale için teşekkürler! Bildiğim kadarı ile Microsoft olsun, diğer şirketler olsun .NET ortamı için de benzer çalışmalar yapıyorlar ama tabii Java teknolojileri bu konuda daha olgun.

Ciddi bir gerilim var yani bir yanda nesneye yönelik programlama mantalitesi öte yandan SQL ve yapısal SQL modeli. Sürekli bir mantaliteden diğerine geçiş. Açıkçası bu beni çok rahatsız ediyor ve maalesef henüz sunulan çözümlerin öyle çok daha yumuşak geçiş sağladıklarına ikna olmuş değilim. Yine de doğru bir yol olduğuna inanıyorum yani eğer bilgisayar kullanıyorsak biz programcıların da işlerini kolaylaştıracak önemli altyapıların geliştirilmesi lazım, şahsen program yazarken işkence çekmekten hoşlananlardan değilim ;-) Ve özellikle yani nesnelerle uğraşmayı tercih ederim, SQL ne kadar otomatik üretilirse ve ben koda baktığımda kod ne denli kısa ve ``doğal´´ görünümlü, dolayısı ile kolay okunabilir olursa o kadar iyi.
0
malkocoglu
Hakikaten, programcılar nesneler ile ne kadar zaman geçirirse, ilişkisel modelden o kadar uzaklaşıyor. Kodlama sırasında tam lazım olan bir nesne akla geliyor, ve diyoruz ki "ben bu nesneyi thiş.getOtekiNesne() ile ne kadar rahat alırdım", fakat nesne veri tabanında hafızada değil!

Kalıcılığın, hem bu tip nesne arası ilişkileri takip, hem de (özellikle) en basit CRUD (CReate/Update/Delete - Ekle/Güncelle/Sil) islemleri için çok çabuk ve faydalı bir çözüm olduğunu düşünüyorum. Olayın "Bir nesne --> Bir tablo" tarafı çözüldükten sonra, ilişki takip ve sorgulama özellikleri kullanılmaya başlanabilir. Veri tabanlarından bağımsız olabilmek te bir yan fayda, MySql'de yazdığımız Java kodu, Oracle'de değiştirmeden çalışması gibi mesela.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

NetBeans 5.0 çıktı!

jfever

Sun tarafından açıkça desteklenen açık kaynak kodlu Java geliştirme platformu NetBeans baştan aşağı yenilendi ve 5.0 sürümü indirilmeye hazır.

Yenilenen arayüz geliştirme araçları, populer uygulama sunucularına destek (JBoss, Weblogic, Sun AppServer, Tomcat.) , JSF ve Struts desteği, geliştirilmiş kod yardımcısı, editör özellikleri ve daha pek çok yenilik.

Java'nın Başı Türkçe ile Dertte

oaygun

Başınıza gelmiştir. Java temelli pek çok yazılımın kurulumunda, önce işletim sisteminin yerel ayarlarını değiştirmek (genellikle ABD, İngilizce), yazılımı kurmak ve sonra tekrar Türkçe'ye almak gerkmektedir. Bunun nedeni de 'i' harfidir. Alfabemizin 11 ve 12. harflerinin nelere kadir olduğunu gösteren bir makale: http://java.sys-con.com/read/46241.htm

Seminer haberi: Struts Shale

anonim

Konu: Struts Shale, Yer: ODTÜ Teknokent İkizler Konferans Salonu. Zaman : 14 Nisan Cuma 14:00. Süre : 1.5 saat

Struts 2.x için üstünde çalışılan yeni versiyonlar Struts Action Framework ve Struts Shale şeklinde ikiye ayrılıyor. Struts Action Framework Struts 1.x çizgisini takip ederken, Struts Shale JSF ile bileşen tabanlı bir yapıya geçiyor.

Bu sunumda Struts Shale ile ilgili aşağıdaki konuları inceleyeceğiz:

1. Struts 1.x e göre yenilikler
2. Shale'in yapısı
3. JSF ile ilgisi
4. Shale Core Library
6. Shale Dialog Controller yapısı
7. Shale Test Framework
8. Shale Validation
9. Örnek bir uygulamanın incelenmesi

Java Bazlı Arama Motoru - Lusin

malkocoglu

Sitemize arama motoru eklemek için seçeneklere bakarken, bir motoru gözümüze ilişti. Apaçe projesi dahilinde Lusin (Lucene) alt projesi, Java ile siteniz için arama motor özelliği sağlayabiliyor. Kullanımı çok basit. (Ed: Java ise, at sepete :p)

JKP - Bölüm 6

upux

Java Kitap Projesinde Bölüm-6 yayınlanmıştır
Bölüm-6 da ki konu başlıkları

Polimorfizm
Geç bağlama (late binding)
Final ve Geç bağlama
Neden Polimorfizm ?
Genişletilebilirlik (Extensibility)
Soyut sınıflar ve metodlar (Abstract classes and Methods )
Niye soyut sınıf ve metodlara ihtiyaç duyarız ?
Yapılandırıcılar içersindeki ilginç durumlar
Kalıtım ve Yukarı doğru çevirim (Upcasting)
Aşağıya doğru çevirim (Downcasting)
www.riskturk.com/java