Hibernate Session metotları arasındaki farklar (save(), persist(), saveOrUpdate(), merge(), update())

save() Adından da anlaşılacağı gibi bir Entity’nin veri tabanına kaydedilmesini sağlar. Transaction olmadan çağrılabilir. Entity nesnesinin ilişkili olduğu başka objeler varsa Session üzerinden flush() metodu çağrıldığında sadece ilgilendiğimiz Entity nesnesi veri tabanına eklenir. Bu yüzden Transaction dışından çağrılması tavsiye edilmez. Transaction içerisinde çağrılıyorsa ilişkili nesneler de veri tabanına commit() ya da flush() metotları çağrıldığında eklenir. persist() Transaction içinde çağrılan save() metoduna benzer. Entity nesnesi...
read more

ThreadLocal Sınıfı – 2

Son zamanlarda ThreadLocal sınıfı ile ilgili çok fazla soru aldığım için 3 Nisan 2012 tarihinde yazmış olduğum makaleye birkaç ekleme yapmak istiyorum. ThreadLocal çalışan thread içindeki veriye referans gösterir. Thread Pool kullanan uygulama sunucularında sınıflar yüklenirken hafıza ile ilgili sıkıntılar yaşanabilir. ThreadLocal içinde sakladığımız verileri işimiz bittiğinde kaldırmalıyız. Peki kaldırmazsak ne olur? Basit bir senaryo : Sunucuya uygulamamızı yükledik. ThreadLocal içinde kullandığımız sınıflar da sunucunun hafızasına yüklendi....
read more

Eclipse Luna

Java 8 desteği biraz geç de olsa Eclipse’in yeni sürümü ile beraber hizmetimize sunuldu. Eski versiyonlarla yazmış olduğunuz kodlarınızın Luna’daki refactor özelliği ile Java 8 destekli kodlara dönüşümü sağlanabiliyor.  Lambda expression’ların kullanımı ve yeni formatlama özellikleri eklenmiş. Eğer Eclipse’in son sürümü olan Luna’yı indirmeden Kepler üzerinden bu özelliklere erişmek isterseniz Kepler SR2 eklentisini eklemeniz yeterli olacaktır. indirmek için tıklayın 1630 defa...
read more

İç sınıflardan hangisi ne zaman kullanılmalı?

Bir sınıf içerisinde başka bir sınıf tanımladığımızda iç sınıf yaratmış oluruz. Java’da iç sınıflar sarmalamayı (encapsulation) arttırmak için kullanılır. Daha okunaklı bir kodumuz olmasının yanında sınıfları mantıksal olarak gruplayabilmemizi de sağlar. Fakat iç sınıf dediğimiz zaman Java’da kullanımı birden çok şekilde gerçekleşir. Peki hangi iç sınıf tipini ne zaman kullanmalıyız? 1 – Local Sınıflar : Bir metot içerisinde tanımlanan sınıflara local sınıflar denir. Bir sınıfın instance’ını birden çok yaratarak...
read more

NetBeans IDE 8.0 Release Candidate

NetBeans geliştirme ortamının 8.0 RC sürümü 26 Şubat 2014 itibariyle yayımlandı. Buradan indirebilirsiniz Bu versiyonda en son Java 8 sürümlerine destek veriliyor. Java SE 8 Java SE Embedded 8 Java ME Embedded 8 Bunun dışında Maven desteği geliştirilmiş. HTML 5 için yeni araçlar gelmiş, PHP ve C/C++ geliştirimleri de yapılmış. Beni en çok ilgilendiren kısmı ise Java EE ve PrimeFaces desteğinin artması. PrimeFaces kod yaratma özelliklerini iyice güzelleştirmişler. Ayrıca veri tabanı bağlantıları için gerekli CRUD işlemleri için iskelet yapı otomatik...
read more

String içerisindeki noktalama işaretlerinden kurtulmak

Bazen String ifadeler içerisindeki noktalama işaretlerinden kurtulmak isteyebilirsiniz. İhtiyaç durumunda hayatınızı kurtaracak o kısa kod aşağıdaki gibidir. Kaynak Kod   replaceAll("\\p{P}", "") Kendi yazdığımız cümle için kullanalım. Kaynak Kod   public static void main(String[] args) { String cumle = "-Hangi takımı tutuyorsun? " + "-Beşiktaş(!) " + "-Bir gün herkes Beşiktaşlı olmasın; " + "-Bırakın o ayrıcalık bizde kalsın......
read more

Android uygulamalarda roboguice kullanımı

Android uygulamalarda Java kodundan layout dosyalarında tanımlanmış görsel öğelere erişmek için en çok kullandığımız yöntem findViewById metodunu çağırmaktır. Bu metodu kullandığımızda bize geriye View nesnesi döner. Yani dönen nesne bir giriş kutusu (EditText) elemanı olabileceği gibi bir düğme (Button) veya bir işaret kutusu (Checkbox) da olabilir. İstediğimiz görsel elemanın özelliklerini kullanabilmek için ise explicit casting yaparız. Örneğin bir düğmeye tıklandığında çalışmasını istediğimiz kod bloğu varsa, düğmeye erişmek için önce...
read more

Java EE’de Injection Mekanizması

Java EE, nesnelerin instance’larını yaratmadan direk erişilebilmesini sağlayan iki tip injection mekanizması destekler. Sadece gerekli olan kaynaklar ve bağımlı oldukları nesneler annotation‘lar ile belirtilir. Geri kalan tüm iş Container tarafından ele alınır. Bu yazımda kullanılan iki tip Injection ile ilgili bilgiler vermeye çalışacağım :       1. Resource Injection : Container tarafından yönetilen ve JNDI ile erişebildiğimiz nesnelere erişmek için kullanılır. Örneğin Servlet sınıfları, Managed Bean’ler, Enterprise Bean’ler ya da sunucuda...
read more

« Önceki Yazılar Sonraki Yazılar »