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

Sıkı Dur Mono, Harmony Geliyor...

anonim

Flame yaratmak için söylemiyorum ama şu an için önemli projelerde kullanılabilecek özgür bir j2se veya j2ee gerçekleştirimi (implemantasyonu) ne yazikki yok. Var olan bazı özgür jvm ve derleyiciler gerçekten başarılı işler yapsada, henüz profesyonel anlamda tercih edilebilir durumda değiller.

Java Teknolojileri Derneği Açıldı

malkocoglu_3

Java Teknolojileri Derneği'nin amacı, Türkiye içerisindeki ögrencilere ve yazılımla uğraşanlara Java Teknolojilerini tanıtmak, yol göstermek, ve kurumsal yazılım, gömülü sistemler gibi alanlarda teknolojinin yapabildiklerini anlatmaktır. Geçmiş dönemlerde yapılan ancak düzenli olmayan çalışmaların hepsini tek bir çatı altında toplayarak düzenli, daha güçlü bir oluşum olarak hareket edebileceğimiz, bir araya gelebilecegimiz bir yapı oluşturmak istedik.

Ücretsiz - Java Teknoloji Saatleri -31 Mart 2010 Saat 19.00'da

anonim

Bu ay 7. si düzenlenecek olan Java teknolojileri saatleri 31 mart 2010 çarşamba günü Bahçeşehir Üniversitesi Beşiktaş kampüsünde gerçekleştirilecektir.

Java: Nerede Kullanmalı, Nerede Kullanmamalı?

FZ

Verilytics'te kıdemli sistem mühendisi olarak çalışan Adam Ronthal Java ile ilgili makalesinde bu programlama dilinin (ve platformunun) nerede işe yaradığını ve nerede problem çıkardığını gerçek hayatta karşısına çıkan somut senaryolara dayanarak anlatıyor ve çarpıcı örnekler veriyor. Ağ programlamadan uzaktan yönetime, yüksek trafikli bir web sitesinin optimizasyonundan üçüncü parti araçlara dek pek çok farklı alandan örnekler verip kıyaslamalar yapan Ronthal, yeri geldiğinde Perl gibi programlama dillerinin, yeri geldiğinde wget gibi belli bir hedefe yönelik uzmanlaşmış programların çok daha iyi çözüm sunabildiklerine değiniyor.

Java Ruby el ele, beraber mutlu günlere

anonim

Daha önce Javacılar ile Rubyciler arasında birbirlerini hor görmelerin yaşandığı Fazlamesai'ye ilginç bir haber.

Haber Spring framework için bir hızlı prototip geliştirme projesi. Proje varolan Spring ve Hibernate iş mantığı ve nesnelerinizi kullanarak ve fazladan yeni bir şey öğrenmenize gerek kalmadan yeniden derleme ve konfigürasyon dosylarını değiştirme gibi prototip üretimi sırasında sizi yavaşlatan işlerden JRuby ile yazılmış bir kontrolcü kullanarak kurtulmanızı sağlıyor. Prototip sizi tatmin ettiği zaman tek yapmanız gereken, hiçbir değişiklik yapmadan JRuby kontrolörü çıkarıp yerine Java olanını eklemek. Proje 1000 satırdan daha az kodla yazılmış ve var olan projelerinize kolayca entegre edilebilir. Proje ile ilgili ayrıntılara buradan erişebilirsiniz.