Web Bileşenleri İçin Spring’in Autowiring Desteği

Spring kullanan Java uygulamalarının muhtemelen en az bir yerinde Spring tarafından yönetilmeyen nesnelerin Spring bean’ları ile iletişime geçmesi gerekir. Spring’in AOP kabiliyeti sayesinde Spring tarafından yönetilmeyen domain nesnelerine bağımlılıkları enjekte etmek mümkündür. Diğer bir tür nesne ise web bileşenleridir. Bunlar servlet, filter veya JAX-WS endpoint’leri olabilir. Çoğunlukla Spring tarafından yönetilmeyen bu tür nesnelerin Spring dünyasına […]

Read More →
How to build SessionFactory in Hibernate 4

Well, I think it is the first time in Hibernate’s history that it is released with incomplete feature implementations and documentation. I came to this conclusion when I see Configuration.buildSessionFactory() method as deprecated. When I look at documentation however it still uses above method to create it! If you look at org.hibernate.cfg.Configuration class, it is […]

Read More →
Spring Application Framework ve Tasarım Örüntüleri 2

Önceki yazılarımızdan birinde Spring Application Framework’de kullanılan örüntülerin bir kısmındann bahsetmiştik. Factory Method, Singleton, Prototype, Proxy, Template Method, Observer, Mediator, Front Controller örüntüleri Spring Application Framework içerisinde değişik şekillerde karşımıza çıkmaktadır. Bu yazımızda da Spring Application Framework içerisinde kullanılan diğer bazı örüntülerden bahsedeceğiz. Strategy: Bu örüntü Spring ürün ailesinin hemen her yerinde karşımıza çıkmaktadır. Spring […]

Read More →
Serialization mı Memento mu?

Geçen hafta düzenlediğimiz ve hem benim hem de katılımcılar için oldukça verimli ve eğlenceli geçtiğini düşündüğüm uygulamalı “Nesne Yönelimli Tasarım Prensipleri ve Tasarım Örüntüleri Eğitimi”nde Memento örüntüsünü inceleyip Java’da nasıl implement edileceğini bir örnek ile açıklarken “Serialization varken Memento’ya neden ihtiyaç duyarız?” şeklinde bir soru soruldu. Memento tasarım örüntüsü ile amaçlanan, bir nesnenin dahili state […]

Read More →
Java ve Double Dispatch 2

İlk yazımızda Java’da “single dispatch“in nasıl çalıştığını ve “multiple dispatch” problemini incelemiştik. Eğer metot çözümleme sırasında input argümanında dikkate alınmasını istiyorsak izlememiz gereken yol “metot çözümlemeyi input argümanın kendisine delege etmek” olacaktır. Nasıl mı? Örnekle açıklayalım… Visitor v = new SubVisitor(); A a = new B(); v.visit(a); Bir önceki örneğimizde Visitor’ün visit metodunu çağırıyor ve […]

Read More →
Java ve Double Dispatch 1

Hepimizin bildiği gibi Java polymorphic (çok formlu) bir dildir. Çok formluluk java uygulamasının içindeki metot çağrılarının spesifik olarak hangi sınıftaki metot tanımı ile yapılacağının çalışma zamanına kadar ötelenmesi ile gerçekleştirilmektedir. Bir örnek ile açıklayalım. public class Visitor { public void visit(A a) { System.out.println(“Visiting A”); } } public class SubVisitor extends Visitor { @Override public […]

Read More →
Kurumsal Java Eğitimleri Mart 2013 Bülteni

JSF ViewScope ve JVM Memory Problemleri Şu sıralar bir müşterimizin kurumsal web uygulamasındaki performans iyileştirme çalışmalarımız ve bu konuda elde ettiğimiz sonuçlarla ilgili olarak bu ayki bültenimizde JSF kullananlar için faydalı olacağını düşündüğümüz bir yazımız var. İlgilenenler yazıya buradan erişebilirler. Hibernate Eğitimimiz Yenilendi Uzun zamandır verdiğimiz ve oldukça ilgi gören Hibernate ile Java Persistence Eğitimi […]

Read More →
NoClassDefFoundError vs ClassNotFoundException

Her ikisi de biz java programcılarının karşısına sıklıkla çıkan hatalardandır. Her ikisi de uygulamamızın runtime’da ihtiyaç duyduğu bir class’ın bulunamadığını anlatmaktadır. Ancak aralarındaki farkları bilmek sorunun ana nedenini tespit etmek ve çözüm getirmek için önemli olabilir. NoClassDefFoundError uygulama kodunun ihtiyaç duyduğu ve derleme sırasında mevcut olan bir sınıfın runtime’da bulunamadığını veya düzgün biçimde okunamadığını veya […]

Read More →
JSF ViewScope ve JVM Memory Problemleri

Şu sıralar büyük bir müşterimizin kurumsal web uygulamasının performans optimizasyonu üzerinde çalışıyoruz. Süreç sonunda uygulamanın kaldırabileceği kullanıcı sayısında ve istekleri ele alma hızında önemli ölçüde iyileşme oldu. Bu iyileştirme sürecinin bir bölümünü de memory optimizasyonuna ayırdık. Uygulamanın ön yüzü JSF ile geliştirilmişti. Bu bloğu takip edenler JSF hakkında ne güzel(!) hisler beslediğimi bilirler. JSF deki […]

Read More →
İlerleme Süreklilik İster

Steve Mann’ı ve çalışmalarını İnternet üzerinden 94’den bu yana aralıklarla takip ediyorum. Kendisi 70’lerin sonlarından bu yana “giyilebilir bilgisayar” sistemleri üzerinde çalışıyor. Çalışmaları en son Google’ın “gözlük” projesini duyunca tekrar aklıma geldi. Acaba Steve Mann’da bu projede yer alıyor mu veya bu proje hakkında ne düşünüyor diye merak ediyordum. Kısa bir zaman sonra takip ettiğim […]

Read More →