Panoramica degli elementi di sintassi JSP
Innanzitutto, per rendere le cose più chiare, ecco una breve panoramica degli elementi di sintassi JSP :
- Direttive : forniscono informazioni relative alla pagina JSP nel suo insieme.
- Elementi di scripting : elementi di codifica Java come dichiarazioni, espressioni, scriptlet e commenti.
- Oggetti e ambiti : gli oggetti JSP possono essere creati in modo esplicito o implicito e sono accessibili in un determinato ambito, ad esempio da qualsiasi punto della pagina JSP o della sessione.
- Azioni : creano oggetti o influenzano il flusso di output nella risposta JSP (o entrambi).
Come il contenuto è incluso in JSP
Esistono diversi meccanismi per riutilizzare il contenuto in un file JSP.
I seguenti 4 meccanismi per includere il contenuto in JSP possono essere classificati come riutilizzo diretto :
(per i primi 3 meccanismi citati da "Head First Servlets and JSP" )
1) La direttiva include :
<%@ include file="header.html" %>
Statico : aggiunge il contenuto dal valore dell'attributo del file alla pagina corrente al momento della traduzione . La direttiva era originariamente destinata a modelli di layout statici, come le intestazioni HTML.
2) L' <jsp:include>
azione standard :
<jsp:include page="header.jsp" />
Dinamica : aggiunge il contenuto dal valore dell'attributo della pagina alla pagina corrente al momento della richiesta . Era destinato più ai contenuti dinamici provenienti dai JSP.
3) Il <c:import>
tag JSTL:
<c:import url=”http://www.example.com/foo/bar.html” />
Dinamica : aggiunge il contenuto dal valore dell'attributo URL alla pagina corrente, al momento della richiesta . Funziona in modo molto simile
<jsp:include>
, ma è più potente e flessibile: a differenza degli altri due include, l' <c:import>
URL può provenire dall'esterno del contenitore Web !
4) Preludi e codici:
Statico : preludi e codici possono essere applicati solo all'inizio e alla fine delle pagine .
È possibile includere implicitamente preludi (chiamati anche intestazioni) e codici
(anche chiamati piè di pagina) per un gruppo di pagine JSP aggiungendo
<include-prelude>
ed <include-coda>
elementi rispettivamente all'interno di un <jsp-property-group>
elemento nel descrittore di distribuzione web.xml dell'applicazione Web . Maggiori informazioni qui:
• Configurazione delle inclusioni implicite all'inizio e alla fine dei JSP
• Definizione delle inclusioni implicite
Il file tag è un metodo indiretto di riutilizzo del contenuto, il modo di incapsulare il contenuto riutilizzabile . Un file tag è un file di origine che contiene un frammento di codice JSP che è riutilizzabile come tag personalizzato .
LO SCOPO di include e Tag Files è diverso.
Il file tag (un concetto introdotto con JSP 2.0) è una delle opzioni per la creazione di tag personalizzati . È un modo più rapido e semplice per creare tag personalizzati .
I tag personalizzati , noti anche come estensioni di tag, sono elementi JSP che consentono di inserire nelle pagine JSP la logica e l'output personalizzati forniti da altri componenti Java. La logica fornita tramite un tag personalizzato è implementata da un oggetto Java noto come gestore di tag .
Alcuni esempi di attività che possono essere eseguite da tag personalizzati includono operazioni su oggetti impliciti, moduli di elaborazione, accesso a database e altri servizi aziendali come e-mail e directory e implementazione del controllo del flusso.
Per quanto riguarda la tua modifica
Forse nel tuo esempio (nella tua Modifica ), non vi è alcuna differenza tra l'uso della funzione di inclusione diretta e un file tag. Ma i tag personalizzati hanno un ricco set di funzionalità . Loro possono
Essere personalizzato mediante gli attributi passati dalla pagina chiamante.
Passa le variabili alla pagina chiamante.
Accedi a tutti gli oggetti disponibili per le pagine JSP.
Comunicare l'uno con l'altro. È possibile creare e inizializzare un componente JavaBeans, creare una variabile EL pubblica che fa riferimento a quel bean in un tag e quindi utilizzare il bean in un altro tag.
Essere annidati l'uno nell'altro e comunicare per mezzo di variabili private.
Leggilo anche da "Pro JSP 2": Comprensione dei tag personalizzati JSP .
Lettura utile.
Conclusione
Usa gli strumenti giusti per ogni attività.
Utilizzare i file tag come un modo semplice e veloce per creare tag personalizzati che possono aiutare a incapsulare contenuti riutilizzabili .
Per quanto riguarda il contenuto incluso in JSP (citazione da qui ):
- Utilizzare la direttiva include se il file cambia raramente . È il meccanismo più veloce. Se il contenitore non rileva automaticamente le modifiche, è possibile forzare le modifiche eliminando il file di classe della pagina principale.
- Utilizzare l'azione include solo per i contenuti che cambiano spesso e se la pagina da includere non può essere decisa fino a quando non viene richiesta la pagina principale.