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

AspectJ'nin lideri Spring'e katılıyor

anonim

Java'da İlgiye Yönelik Programlama'ya (Aspect Oriented Programming) imkan veren AspectJ projesinin lideri Adrian Colyer, Spring Framework için interface21 şirketine katılıyor.

Java Data Mining API

anonim

The Java Data Mining API (JDM) veri madenciliği araçlarına erişmek için standart bir Java API oluşturma çalışmasıdır. JDM JDBC'nin veri tabanları için yaptığını, veri madenciliğinde yapmayı vaad ediyor ve veri madenciliğini de java programcısının alet kutusuna ekliyor. Burada bulabileceğiniz makale de temel veri madenciliği yapıları ile basit bir JDM uygulamısının gerçekleştirimi anlatılıyor.

Java Masters Competition 2005 sonuçlandı

anonim

Son 3 yıldır Sun ve Siemens'in düzenlediği "Java Masters Competition 2005" sonuçlandı.

Birincilik ödülü Çin Feng Ben, Xi'an
İkincilik Ödülü Türkiye Emrah Budur
Üçüncülük ödülü Tayland Panuwat Jantharajit

www.javamasters.org

Netbeans IDE İçin Android Eklentisi Hazır

opheus

Netbeans IDE 6.0 kullanıyorsanız ve Android SDK ile ilgileniyorsanız sizin için hazırlanmış olan Undroid eklentisini kullanarak zahmetsizce kodlamaya başlayabilirsiniz.

Görüntü işlem kütüphanesi - CmuCamJ

anonim

Serbest yazilim projesi olan CmuCamJ, 1.02 sürümüne geldi. Projenin amacı, robota bağlı ufak fotoğraf makinasından;
1- Resim çekip mini bilgisayara yüklemek
2- Mini bilgisayarda görüntüyü işleme
3- İşlem sonucuna gore robot yönetme
üzerine yapıldı. Görüntü işleme safhası için geniş bir kütüphane oluşturduk. Bu kütüphane içindeki işlemleri kullanan robot, mesela oda içinde gezinirken sadece "zemin bölümü" izole edilerek, nereye gideceğini takip edebilir. Nitekim yazdığımız ilk uygulama bu yönde idi.
SourceForge projesi: sourceforge.net/projects/cmucamj
Görüntü işlem hakkında bir yazı (CmuCamJ örneği ile): www.bilgidata.com/article.jsp?file=a_maske_kullanmak.xml&category=robotlar