SORU
14 NİSAN 2009, Salı


AKSARAY destek bean yapısı (en iyi uygulamalar)

Bu yazı, AKSARAY sayfaları ve destek fasulye arasındaki arayüz için en iyi uygulamalar hakkında insanların fikir verebilirim umarım.

Ben asla razı olduğu bir konu destek benim fasulye yapıdır. Ayrıca, asla bu konu hakkında iyi bir makale buldum.

Özellikleri fasulye destek olan neye ait? Ne zaman yeni bir bean oluşturma ve üzerine özellikleri ekleyerek karşı verilen bir fasulye için daha fazla özellik eklemek için uygun mu? Basit uygulamalar için, sense sadece tüm sayfayı tek destek bean var, karmaşıklığı bir fasulye enjekte ile ilgili düşünüyor mu? Destek fasulye herhangi bir gerçek iş mantığı içermelidir, ya da kesinlikle veri içermelidir?

Sorular ve çıkabilecek diğerleri bu cevap için çekinmeyin.

< / ^ hr .

AKSARAY sayfa ve destek fasulye arasında kaplin azaltılması için, hiç OLUMSUZLUK sayfanın herhangi bir bean tesisin özellikleri destek erişim sağlar. Örneğin, ben asla böyle bir şeye izin verir:

<h:outputText value="#{myBean.anObject.anObjectProperty}" />

Ben her zaman gibi bir şey gerektirir:

<h:outputText value="#{myBean.theObjectProperty}" />

destek fasulyeyi değeri:

public String getTheObjectProperty()
{
    return anObject.getAnObjectProperty();
}

Ben bir koleksiyonu üzerinde bir döngü, veri bir tablo içinde bir nesne içine sondaj önlemek için kapsayıcı bir sınıf kullanıyorum mesela.

Bu yaklaşım hissediyor genel "doğru" beni. Görünümü ve veri arasında herhangi bir kaplin önler. Eğer yanılıyorsam beni Düzelt lütfen.

CEVAP
23 HAZİRAN 2009, Salı


Bu kontrol etmek isteyebilirsiniz: making distinctions between different kinds of JSF managed beans.

Burada Neil Griffin tarafından yukarıdaki maddede tanımlanan farklı fasulye çeşitleri, açıklaması:

  • Model Yönetilen-Bean:Normalde oturum kapsamı.-Fasulye yönetilen bu tür "" endişe MVC tasarım deseni. Model katılır Kelime "" -- sanırım VERİ. modeli gördüğünüzde Bir OLUMSUZLUK model-bean alıcı/ayarlayıcı şifrelenmiş özellikleri ile JavaBean tasarım deseni izleyen bir POJO olmalıdır. Model fasulye için en yaygın kullanım örneği bir veritabanı varlık olmak, ya da sadece sonucu veritabanı bir sorgu kümesi satır kümesi temsil etmektir.
  • Destek-Bean Başardı:Normalde istek kapsamı.-Fasulye yönetilen bu tür "" endişe MVC tasarım deseni. Görünüm katılır A-fasulye yedekleme amacı UI mantığı desteklemek için, ve OLUMSUZLUK manzaralı 1::1 ilişki vardır, ya da Facelet bir kompozisyon AKSARAY şeklidir. Genellikle tarzı JavaBean özellikleri ile ilişkili alıcılar/ayarlayıcıları olsa da, bu Görünüm altındaki uygulama veri modeli değil ... ... özelliklerdir. AKSARAY-fasulye desteğini de OLUMSUZLUK actionListener ve valueChangeListener yöntemleri olabilir.
  • Denetleyicisi Yönetilen-Bean:Normalde istek kapsamı.-Fasulye yönetilen bu tür "" MVC tasarım deseni. endişe Denetleyicisi katılır Denetleyici fasulye amacı, iş mantığı bir çeşit idam ve AKSARAY navigasyon işleyicisi için bir gezinti sonucu döndürmektir. AKSARAY denetleyicisi-fasulye genellikle OLUMSUZLUK eylem yöntemleri (ve actionListener yöntem değil).
  • Destek Yönetilen-Bean:Normalde oturum veya uygulama kapsamı.Bean, bu tür """ endişe MVC tasarım deseni. Görünüm olarak" bir veya daha fazla görünüm destekler Tipik bir kullanma durumu h OLUMSUZLUK için bir ArrayList tedarik:selectOneMenu açılan birden fazla OLUMSUZLUK görünümünde görüntülenen listeler. Eğer açılan listeleri verileri kullanıcıya özel ise, fasulye oturum kapsamında tutuluyor. Eğer veriler, tüm kullanıcılar için (iller açılır listeler gibi) için de geçerlidir, ancak sonra fasulye tüm kullanıcılar için önbelleğe alınmış olabilir bu yüzden bu uygulama kapsamında tutulması, olacaktır.
  • Programı Yönetilen-Bean:Normalde uygulama kapsamı.Bean, bu tür bir "yardımcı" ya da daha fazla OLUMSUZLUK bir görüş fonksiyonu. bir tür sağlar Bu iyi bir örnek, birden çok web uygulamaları yeniden kullanılabilen bir FileUpload fasulye olabilir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BenjiManTV

    BenjiManTV

    20 Mart 2011
  • JTechTalk

    JTechTalk

    11 Temmuz 2010
  • MrDevin521

    MrDevin521

    18 Temmuz 2010