English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Gli oggetti impliciti di JSP sono gli oggetti Java forniti dal container JSP per ogni pagina, che possono essere utilizzati direttamente dagli sviluppatori senza dichiarazione esplicita. Gli oggetti impliciti di JSP sono anche noti come variabili predefinite.
I nove oggetti impliciti supportati da JSP:
oggetto | Descrizione |
---|---|
request | HttpServletRequest Esempio dell'interfaccia |
response | HttpServletResponse Esempio dell'interfaccia |
out | JspWriterEsempio della classe utilizzato per esportare i risultati sulla pagina web |
session | HttpSessionEsempio della classe |
application | ServletContextEsempio della classe che è correlato all'ambiente applicativo |
config | ServletConfigEsempio della classe |
pageContext | PageContextEsempio della classe che fornisce l'accesso a tutti gli oggetti della pagina JSP e agli spazi dei nomi |
page | Simile al chiave this nei classi Java |
Exception | ExceptionL'oggetto della classe rappresenta l'oggetto di eccezione corrispondente alla pagina JSP che ha generato l'errore |
L'oggetto request è un esempio della classe javax.servlet.http.HttpServletRequest. Ogni volta che il client richiede una pagina JSP, il motore JSP crea un nuovo oggetto request per rappresentare questa richiesta.
L'oggetto request fornisce una serie di metodi per ottenere informazioni di intestazione HTTP, cookies, metodi HTTP, ecc.
L'oggetto response è un esempio della classe javax.servlet.http.HttpServletResponse. Quando il server crea l'oggetto request, crea anche l'oggetto response utilizzato per rispondere a questo client.
L'oggetto response definisce anche un'interfaccia per la gestione dei moduli di intestazione HTTP. Attraverso questo oggetto, gli sviluppatori possono aggiungere nuovi cookies, timestamp, codici di stato HTTP, ecc.
L'oggetto out è un esempio della classe javax.servlet.jsp.JspWriter, utilizzato per scrivere contenuti nell'oggetto response.
L'oggetto JspWriter di livello iniziale viene istanziato in modo diverso a seconda che la pagina abbia una cache o no. È possibile disattivare facilmente la cache utilizzando l'attributo buffered='false' nella direttiva page.
La classe JspWriter contiene la maggior parte dei metodi della classe java.io.PrintWriter. Tuttavia, JspWriter aggiunge alcuni metodi progettati specificamente per la gestione della cache. Inoltre, la classe JspWriter solleva l'eccezione IOExceptions, mentre PrintWriter no.
La tabella seguente elenca i metodi importanti che utilizzeremo per output di dati di tipo boolean, char, int, double, String, object e altri:
Metodo | Descrizione |
---|---|
out.print(dataType dt); | Output del valore di tipo Type |
out.println(dataType dt); | Output del valore di tipo Type seguita da un ritorno a capo |
out.flush(); | Rinfrescamento dello stream di output |
L'oggetto sessione è un esempio della classe javax.servlet.http.HttpSession e ha lo stesso comportamento dell'oggetto sessione nei Java Servlets.
L'oggetto sessione viene utilizzato per tracciare la sessione tra le richieste client.
L'oggetto application impacchetta direttamente l'oggetto della classe ServletContext del servlet e è un esempio della classe javax.servlet.ServletContext.
Questo oggetto rappresenta l'intera pagina JSP durante tutto il ciclo di vita della pagina JSP. L'oggetto viene creato durante l'inizializzazione della pagina JSP e rimosso con la chiamata al metodo jspDestroy().
Aggiungendo attributi all'application, tutti i file JSP che compongono la vostra applicazione web possono accedere a questi attributi.
L'oggetto config è un esempio della classe javax.servlet.ServletConfig, che impacchetta direttamente l'oggetto della classe ServletConfig del servlet.
Questo oggetto permette agli sviluppatori di accedere ai parametri di inizializzazione del Servlet o del motore JSP, come i percorsi dei file.
Di seguito è riportato l'uso dell'oggetto config, non è molto importante quindi non viene utilizzato spesso:
config.getServletName();
Restituisce il nome del servlet contenuto nell'elemento <servlet-name>, notare che l'elemento <servlet-name> è definito nel file WEB-INF\web.xml.
L'oggetto pageContext è un esempio della classe javax.servlet.jsp.PageContext, utilizzato per rappresentare l'intera pagina JSP.
Questo oggetto viene principalmente utilizzato per accedere alle informazioni della pagina e filtrare la maggior parte dei dettagli di implementazione.
Questo oggetto memorizza i riferimenti agli oggetti request e response. Gli oggetti application, config, session, out possono essere esportati accedendo alle proprietà di questo oggetto.
L'oggetto pageContext contiene anche informazioni sugli indirizzi di comando passati alla pagina JSP, inclusi informazioni di cache, URL di ErrorPage, scope della pagina.
La classe PageContext definisce alcuni campi, tra cui PAGE_SCOPE, REQUEST_SCOPE, SESSION_SCOPE, APPLICATION_SCOPE. Fornisce anche oltre 40 metodi, la metà dei quali eredita da javax.servlet.jsp.JspContext.
Un metodo importante è removeAttribute() che accetta un o due parametri. Ad esempio, pageContext.removeAttribute("attrName") rimuove l'attributo correlato in tutti e quattro gli scope, ma il seguente metodo rimuove solo l'attributo correlato in un determinato scope:
pageContext.removeAttribute("attrName", PAGE_SCOPE);
Questo oggetto è un riferimento all'esempio di pagina. Può essere considerato come rappresentante dell'intera pagina JSP.
L'oggetto page è un sinonimo dell'oggetto this.
L'oggetto exception impacchetta le informazioni di eccezione lanciate dalla pagina precedente. Di solito viene utilizzato per generare una risposta appropriata alle condizioni di errore.