📰 WHAT'S NEW?

[09] JAVA BEAN

API Java Bean merupakan standar format dari class java. Dengan adanya Java Bean, komponen dapat digunakan sewaktu-waktu untuk membangun program. Penulisan kelas Java Bean mempunyai aturan tertentu sebagai berikut:
a.      Memiliki properti (variabel) dengan akses bukan public yang digunakan untuk menyimpan data.
b.      Memiliki method get dan set (memberi dan mendapatkan properti dari bean).
c.       Memiliki konstruktor kosong.

Berikut ini adalah langkah-langkah membuat kelas Java Bean:
a.      Mendefinisikan variabel dalam bean yang akan kita buat.
Variabel ini tidak boleh dideklarasikan public.
Misal : private String nrp;
b.      Untuk masing-masing variabel dibuat metode get dan set.
Misal : getNrp() dan setNrp()
Untuk boolean, gunakan method setXxx() untuk mengeset nilai boolean dan isXxx yang mengembalikan nilai boolean
Aturan membuat method:
public void set<namaVariabel>
public <tipe_variabel> get<namaVariabel>
public boolean is<namaVariabel>
           c.  Menambahkan konstruktor kosong.

         Berfungsi untuk inisialisasi

Membuat Java Bean

Memanggil javabean dalam halaman jsp memakai sintax:
<jsp:usebean id=”name” class=”package.Class”/>
Yang berarti pembuatan object class yang telah ditentukan dan dimasukkan ke dalam variable dengan nama yang ditentukan id.
Seumpama ada contoh sintax berikut :
<jsp:usebean id=”book1” class=”cwp.Book”/>
Secara normal hal sama dengan scriplet :
<% cwp.Book book1=new cwp.Book(); %>
Meskipun javabean ekivalen dengan membangun sebuah object, tapi dia mempunyai option tambahan yang membuatnya lebih powerfull. Kita dapat menentukan scope yang mendefinisikan ruang batas dari obyek yang akan dibuat. Bisa saja scope bukan hanya pada page ini saja, tapi bisa lebih jauh. Jika ini dapat dishare tentunya akan sangat berguna, jadi kita akan membuat object baru jika dan hanya jika tidak memang benar benar tidak ada yang id dan scopenya sama.

Mengambil Nilai Property Java Bean
Dalam beberapa kasus mungkin kita ingin variable lokal kita mempunyai tipe yang sama sebagai object yang dibuat. Cara pengaksesan javabean adalah memakai sintax jsp:getproperty. Contoh pengaksesan sbb :

<jsp:getProperty name=”book1” propery=”title” />
ekivalen dengan :
<%= book1.getTitle() %>

Mengeset Nilai Property Java Bean
Untuk memodifikasi properti menggunakan sintax jsp:setProperty . Action ini mempunyai beberapa bentuk yang berbeda, tapi untuk yang paling simple perlu tiga attribut yaitu : name, property dan valuenya. Contoh sintax sederhananya adalah sbb :
<jsp:setProperty name=”book1” propery=”title” value=”Core Web Programming”/>
ekivalen dengan :
<%= book1.setTitle(“Core Web Programmming”) %>


Berikut ini adalah contoh sederhana Java Bean dengan JSP:

public class StringBean {
private String message = "No message specified";
public String getMessage() {
return(message);
}
public void setMessage(String message) {
this.message = message;
}
}

Dan pengaksesannya memakai JSP adalah sbb :

<HTML>
<HEAD>
         <TITLE>Using JavaBeans with JSP</TITLE>
</HEAD>
<BODY>
    <TABLE BORDER=5 ALIGN="CENTER">
    <TR><TH CLASS="TITLE"> Using JavaBeans with JSP
</TABLE>
<jsp:useBean id="stringBean"
class="coreservlets.StringBean"/>
<OL>
    <LI>Initial value (getProperty):
    <I><jsp:getProperty name="stringBean"
       property="message" /></I>
    <LI>Initial value (JSP expression):
    <I><%= stringBean.getMessage() %></I>
    <LI><jsp:setProperty name="stringBean"
        property="message" value="Best string bean: Fortex" />
Value after setting property with setProperty:
    <I><jsp:getProperty name="stringBean"
       property="message" /></I>
    <LI><% stringBean.setMessage("My favorite:
        Kentucky Wonder"); %>
Value after setting property with scriptlet:
    <I><%= stringBean.getMessage() %></I>
</OL>
</BODY>
</HTML>

Berikut ini adalah contoh program pemakaian set dan get properti javabean:

<HTML>
<HEAD><TITLE>Using jsp:setProperty</TITLE></HEAD>
<BODY>
<TABLE BORDER=5 ALIGN="CENTER">
<TR><TH CLASS="TITLE">
Using jsp:setProperty</TABLE>
<jsp:useBean id="entry"
class="coreservlets.SaleEntry" />
<jsp:setProperty name="entry" property="itemID"
 value='<%= request.getParameter("itemID") %>' />
<% int numItemsOrdered = 1;
try {
  numItemsOrdered =
  Integer.parseInt(request.getParameter("numItems"));
} catch(NumberFormatException nfe) {}
%>
<jsp:setProperty name="entry"
property="numItems"
value="<%= numItemsOrdered %>" />
<% double discountCode = 1.0;
try {
   String discountString =
   request.getParameter("discountCode");
 // Double.parseDouble not available in JDK 1.1
  discountCode = Double.valueOf(discountString).doubleValue();
} catch(NumberFormatException nfe) {}
 %>
<jsp:setProperty name="entry"
 property="discountCode"
 value="<%= discountCode %>" />
<BR>
<TABLE ALIGN="CENTER" BORDER=1>
<TR CLASS="COLORED">
<TH>Item ID<TH>Unit Price<TH>Number
Ordered<TH>Total Price
<TR ALIGN="RIGHT">
<TD><jsp:getProperty name="entry"
property="itemID" />
<TD>$<jsp:getProperty name="entry"
property="itemCost" />
<TD><jsp:getProperty name="entry"
property="numItems" />
<TD>$<jsp:getProperty name="entry"
property="totalCost" />
</TABLE>
</BODY>
</HTML> 

0 komentar:

Posting Komentar