May062011

SERVLET, JSF, JPA, POJO, SEAM nedir ?

Published by admin at 9:07 PM under

SERVLET, JSF, JPA, POJO, SEAM nedir ?
Bu kavramlar hakkında temel bilgiler.

Servlet en basit haliyle java web sayfalarının temelidir.
Http protokolünden gelen çağrılara cevap vererek html çıktılarını hazırlar. Servlet server tarafında çalışır
ve istemciye html kodu döndürür.

POJO : programımınızda kullanacağımız değişkenlerin bir arada tanımlı olduğu java class larıdır.
içinde genelde işlem yapılmaz. sadece değişkenleri içerir, böylece tanımlanması ve kullanılması kolay
olur. Genelde databaseki tablolarımızla bire bir senkronize olur.
Mesela bir öğrenci tablomuz varsa onun içinde olan bütün alanları öğrenci isimli bir Pojo classı oluşturup
içine koyarız. Böylece öğrenci tablosuyla ilgili bir işlem yapılacağı zaman bu pojo classı kullanılır.
Mesela bu class tan bir nesne yaratılarak , bu nesnenin içeriği set edilir ve database'e kayıt etmek
için bu nesneyi yollamamız yeterli olur.
Mesela ogrenci.java diye bir pojo classımız olsun.

class Ogrenci {
    private int ogrenci_no;
    private String ogrenci_adi;
    private String ogrenci_soyadi;

    public void setOgrenci_no(int ogrenci_no) {
        this.ogrenci_no = ogrenci_no;
    }

    public int getOgrenci_no() {
        return ogrenci_no;
    }

    public void setOgrenci_adi(String ogrenci_adi) {
        this.ogrenci_adi = ogrenci_adi;
    }

    public String getOgrenci_adi() {
        return ogrenci_adi;
    }

    public void setOgrenci_soyadi(String ogrenci_soyadi) {
        this.ogrenci_soyadi = ogrenci_soyadi;
    }

    public String getOgrenci_soyadi() {
        return ogrenci_soyadi;
    }
}

bu pojo class ımızı kod içinde şu şekilde kullanıyor olacağız.

Ogrenci ogr = new Ogrenci();
ogr.setOgrenci_no(123456);
ogr.setOgrenci_adi("selim");
ogr.setOgrenci_soyadi("caliskan");


daha sonra database ile bağlantı yapan ve kayıt ekleyen methodumuzun adı da Ogrenci_Kaydet olduğunu
varsayalım. Tabiki database bağlantı vs.. işleri yapan sınıfımızda olacak onunda adi DatabaseBaglantiSinifi.java
olsun. o zaman örnek kodumuz şu şekilde olması gerekecek.

DatabaseBaglantiSinifi DBS = new DatabaseBaglantiSinifi();
DBS.Ogrenci_Kaydet(ogr);

JSF : servlet mimarisinin üzerine geliştirilmiş güzel bir web frameworküdür ama component olarak bazı
eksikleri vardır. Bu eksikleride diğer (richfaces vs..) componentler kullanılarak doldurmak mümkündür.
Zaten JSF deki amaç bütün ihityaçları karşılama değil güzel bir altyapı hazırlamaktır.
O yüzden eksikler konusunda çok fazla endişelenmeyin , herşeyin bir karşılığı vardır ve rahatça
iç içe kullanarak işlemlerinizi yapabilirsiniz.

JPA : JSF web sayfalarında yapılan işlemlerin database ile bağlantısını kolayca sağlayan alt yapıdır.
Böylelikle gereksiz, bize ek yük getirecek SQL cümlelerinin çoğundan kurtulmuş oluruz.
Mesela bir tabloya insert yapmak istedğinizide normal bir programda insert cümlesi yazmanız gerekirken
JPA da nesnenizi set edip persist methonudu çağırmanız yeterli olacaktır.

SEAM : JSF in eksiklerini ve daha fazlasını kapsayan çok geniş bir framework yapısıdır.
PDF üretmekten mail atmaya kadar bir çok componenti kendi içinde barındıran SEAM Frameworku
sayesinden işlerimizi hızlı bir şekilde geliştirebiliriz.
Kendi içinde barındırdığı SEAM-GEN isimli otomatik kod üretme toolu sayesinde temel yapıyı hızlı
bir şekilde hazırladıktan sonra kodlarımızda istediğimiz değişiklikleri yaparak hızlı yazılım
geliştirme işlemleri yapabiliriz.
Database veya entity yapısından kod üretebilmektedir.
Böylece database yapısını tasarladığımız bir projeni çalışan kodlarını hızlı bir şekilde üretebiliriz.



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Tags: , , ,

E-mail | Permalink | Trackback | Post RSSRSS comment feed 0 Responses