6.1 JavaBeans nedir?

Zaten 90'ların sonunda, Java dili, sınıf sayısının onlarca ve yüz binlerce olarak ölçüldüğü büyük sunucu uygulamaları için aktif olarak kullanılmaya başlandı. İşte o zaman Java nesnelerinin görünümünü standartlaştırma fikri ortaya çıktı.

Esneklikten mahrum kalmamak için Java dilinin tamamına dokunulmadı. Peki, geriye dönük uyumluluk ve tüm bunlar. Daha sonra yeni nesil Java nesneleri için bir takım kriterler geliştirdiler ve bu tür nesnelere Java Fasulyesi adını verdiler. Java, adını popüler bir kahve markasından almıştır, bu nedenle Java Beans, kelimenin tam anlamıyla "kahve çekirdekleri" anlamına gelir.

En önemli kriterler şunlardı:

  • Sınıfın iç alanlarına erişim getProperty().
  • Sınıf alanlarına veri yazmak setProperty(value), .
  • Sınıfın ortak parametresiz bir oluşturucusu olmalıdır .
  • Sınıf seri hale getirilebilir olmalıdır.
  • Sınıfın equals(), hashCode()ve yöntemleri geçersiz kılınmış olmalıdır toString().

Bu yaklaşım, uygulamaları daha az tutarlı hale getirdi. Her zaman açık:

  • bir nesne nasıl oluşturulur - ortak bir varsayılan kurucu vardır;
  • özellik değeri nasıl alınır/ayarlanır;
  • bir nesnenin nasıl aktarılacağı/kaydedileceği (serileştirme kullanıyoruz);
  • nesnelerin nasıl karşılaştırılacağı (equals() ve hashCode() kullanılarak);
  • günlükte nesne hakkındaki bilgilerin nasıl görüntüleneceğini (toString kullanın).

Şimdi aslında endüstri standardı, ama bir zamanlar yeni bir trenddi. Görünüşe göre herkes zaten böyle yazıyor, ancak HttpClient ve Builders'ı hatırlarsanız, yeni standardın birileri için zor olduğunu görebilirsiniz.

Bu tür nesneler, ana anlam yüklerinin veri depolama olduğu yerlerde yaygın olarak kullanılır. Örneğin, GUI'lerde, veritabanlarında ve JSP sayfalarında.

6.2 JSP'ler ve JavaBeans

JSP'nin nedenlerinden biri, ön uç geliştiricilere dış kaynak sağlanabilmesiydi. Ve ne? HTML'den anlayan biri var, bırakın JSP yazsın. Java programcıları kendi kısımlarını yazıyor, ön uç geliştiriciler kendi kısımlarını yazıyor - her şey yolunda.

Ön uç geliştiriciler JSP'ye gömülü yazılı Java kodunu anlamak zorunda kalana kadar her şey yolundaydı. Veya daha da kötüsü, böyle bir kodu kendiniz yazın.

Java programcıları da bundan memnun değildi. Peki, lütfen söyleyin, hangi düzen tasarımcıları arka uç geliştiricileridir? Evet, senaryo dışında hiçbir şey yazamazlar. Evet ve tüm programlama paradigması, farklı dilleri tek bir dosyada karıştırmanın kötü bir biçim olduğunu söylüyor.

Ardından, ön uç geliştiricilere HTML kodunda olduğu gibi Java nesneleriyle çalışma fırsatı vermeleri gerektiği fikri ortaya çıktı. Her HTML etiketi de kendi alanları olan bir nesnedir, neden benzer şekilde Java nesneleri ile çalışmıyorsunuz?

Daha erken olmaz dedi ve bitirdi. Özel etiketler eklendi ve gidiyoruz.

Nesne oluşturma:

<jsp:useBean id="Name" class="Object type" scope="session"/>

Bu komut, türünde bir nesne yarattı ve onu adın altına objectkoydu .sessionName

Nesneler dört depodan birinde saklanabilir: uygulama (genel), oturum, istek ve sayfa. Bu tür nesnelerin bir özelliğini ayarlamak da mümkündü:

<jsp:setProperty name="Name" property="propName" value="string constant"/>

Bunun gibi nesnelerin özelliğini alabilirsiniz:

<jsp:getProperty name="Name" property="propName"/>

Etiketleri kullanmaya bir örnek:

<body>
    <center>
        <h2>Using JavaBeans in JSP</h2>
        <jsp:useBean id = "test" class = "com.example.TestBean" />
        <jsp:setProperty name = "test" property = "message" value = "Hello JSP..." />
        <p> What-to do important</p>
        <jsp:getProperty name = "test" property = "message" />
    </center>
   </body>