I JavaBeans, piccoli applicativi scritti i
linguaggio Java, costituiscono una peculiarità delle JSP e rappresentano un grande vantaggio per lo
sviluppatore sia in termini di risparmio di tempo che di pulizia del codice.
Gli esempi di Java Server
Pages proposti in questa guida hanno seguito sino ad ora la stessa logica: il codice degli script è stato
posizionato all'interno delle pagine stesse, "immerso" o no, a seconda dei casi, tra i tags HTML "miscelando"
componenti statiche e dinamiche.
Certo fino ad adesso i listati proposti non presentano particolari
complessità, ma se dovessimo costruire applicativi pił strutturati la leggibilità del codice ne risentirebbe
certamente rendendo pił ardui eventuali aggiornamenti o correzioni.
Vi è poi un ulteriore discorso di cui
tenere conto, altrettanto importante, è infatti sempre consigliabile creare codice "riutilizzabile" e "portabile", se
per esempio dovessimo impiegare un determinato applicativo in pił di una JSP sarebbe di certo seccante doverlo
riscrivere e adattare per ognuna di esse.
Fortunatamente i JavaBeans esistono proprio per fornire una
soluzione comoda e professionale alle problematiche appena descritte.
Essi sono destinati a contenere gran
parte delle componenti dinamiche e funzionali di una Web application con il vantaggio di poterle omettere al momento
della stesura delle JSP; inoltre, essendo realizzati secondo le specifiche del linguaggio Java, i
JavaBeans posseggono consolidate doti in termini di portabilità.
Per essere utilizzati essi
devono essere semplicemente "integrati" nelle JSP, dopo di chè sarà possibile sfruttarne tutti i
metodi.; le JSP mettono a disposizione tre istruzioni per il richiamo dei JavaBeans.
La prima
istruzione è <jsp:useBean>: associa la classe del JavaBean ad un oggetto posto all'interno della
JSP, è così possibile richiamarne i metodi senza ulteriori riferimenti al file. A
<jsp:useBean> vanno associati come attributi l'ID univoco per l'oggetto istanziato e Scope,
cioè il contesto d'istanza dell'oggetto:
<jsp:useBean
id="javaBean"
scope="application"
class="nome_classe" />
Abbiamo poi l'azione <jsp:setProperty>, con
cui possiamo settare il valore proprio di una delle proprietà di un JavaBeans. <jsp:setProperty>
accetta come attributi: name, il nome dell'istanza; value, il valore della proprietà; param,
cioè il nome del parametro da settare; property, che identifica la proprietà a cui assegnare il
valore:
<jsp:setProperty
name="nomeIstanza"
property="proprietà"
param="parametro" />
Infine, abbiamo l'istruzione <jsp:getProperty> che visualizza in output il
valore della proprietà di un'istanza inserendolo nella variabile predefinita out. Quest'ultima azione accetta
come attributi il name e la property:
<jsp:getProperty
name="nomeIstanza"
property="proprietà" />
I JavaBeans utilizzano delle proprietà capaci di
descrivere le informazioni poste al loro interno e destinate alla produzione dei comportamenti. Le variabili dei
JavaBeans vengono rese inaccessibili agli utenti in quanto sono i di tipo private o protected, a
renderle raggiungibili (si noti bene, non "accessibili") ci pensano dei metodi detti public.
I metodi
utilizzabili per la raggiungibilità dei dati sono:
- public void setNome_Proprietà() a cui
devono essere passati come parametri la tipologia dei dati, le proprietà e il loro valore.
- public
Tipo_Proprietà getNome_Proprietà() che rileva informazioni sulla proprietà.
- public
boolean isNome_Proprietà() che, come il secondo metodo, rileva informazioni sulla
proprietà.
I JavaBeans sono un argomento veramente vasto perchè riguardano molto da
vicino la programmazione orientata agli oggetti, come finale per questo capitolo presentiamo l'ossatura di un
possibile JavaBean:
package hall;
public class NomeBean
{
private String stringa =
"Nessuna notifica";
public String getStringa()
{
return(stringa);
}
public void
setStringa(Nome Stringa)
{
this.stringa = stringa;
}
}
Come si nota leggendo il
codice appena proposto, nella sintassi dei metodi essi vengono introdotti da get e set minuscoli da unire al
nome del parametro con iniziale maiuscola; se dovessimo trovarci davanti a nomi composti anche l'iniziale della seconda
parola sarà maiuscola (setPrimonomeSecondonome).
E' poi utile ricordare che i JavaBeans non vanno
conservati nello stesso percorso della root del Servlet Engine utilizzato per le JSP, ma hanno uno
spazio a loro dedicato, generalmente la cartella di default sarà per Tomcat:
"WEB-INFclasses".
Attenzione: Gli articoli su Tomcat presenti in questa sezione sono stati concessi in esclusiva per la pubblicazione a Mrwebmaster.it; ne è vietata la riproduzione, anche parziale,
senza l'esplicito consenso dell'autore e della redazione di Mrwebmaster.it. |