painless java mfc framework : urfa!

java September 9th, 2009

manyaklar merhaba,

google app engine üzerinde proje geliştirmeye çalışırken hali hazırdaki mvc frameworklerinden struts ve spring mvc ile sorun yaşayınca, canıma tak edip oturup kendi mvc framework’ümü yazdım! elbette dört başı mamur ve muhteşem bir kod olmadı ama bir yerden başlamak lazım değil mi?

framework’ümüzün ismi urfa, neden urfa derseniz acısız olduğu için. diğer mvc framework’lerini ayağa kaldırmak ve öğrenmek için çektiğimiz acılar bunda yok. tek bir jar’ı projeye ekleyip web.xml’imize bir filter olarak ekliyoruz ve bitti! bundan sonra action’lar yazarak (base class ve annotationlar yardımı ile) bakınız neler yapabiliyoruz:

1. web.xml’e ekleme yapmaya gerek olmadan servlet yazar gibi action sınıfları yazabiliyoruz. bu sınıflarda aynen servlet’lerde olduğu gibi doGet ve doPost metodları var. Action ana sınıfından türettiğimiz bu sınıfa @ActionHandler annotation’u ile path verebiliyoruz. (yakında bu path için regular expression desteği de gelecek)

2.  Html inputları aynen bu action sınıfında yazıp @ActionParam annotation’u ile işaretleyip, değerlerini direkt alabiliyoruz. Yani html deki inputları sınıf değişkenlerine map’liyor.

3. Yine @ActionParam annotation’u kullanarak validasyon yapabiliyoru. Required, min, max değer kontrolleri gibi.

4. Yine @ActionHandler annotation’u ile iş mantığınızı cache’leyebiliyoruz. Bunun için sadece cacheTimeout vermeniz yeterli.

urfa’nın düz servlet yazmaktan çok daha iyi bir çözüm olduğunu düşünüyorum. her türlü yardıma açığım.  projemiz google code üzerinde duruyor nahanda adresi de bu http://code.google.com/p/urfa


Social Bookmarking
Add to: Mr. Wong Add to: Digg Add to: Del.icio.us Add to: Reddit Add to: StumbleUpon Add to: Slashdot Add to: Netscape Add to: Furl Add to: Yahoo Add to: Google Add to: Technorati Add to: Newsvine Add to: Ma.Gnolia



Başka Manyak Konular


Lütfen Yorumlarınızı bizimle paylaşın.

Leave a Reply

Site Navigation

Categories

Archives

Meta

Recent Enteries

Recent Comments

FireStats iconPowered by FireStats