CodeGym /Corsi /All lectures for IT purposes /Struttura dei file JSP

Struttura dei file JSP

All lectures for IT purposes
Livello 1, Lezione 386
Disponibile

2.1 Direttive JSP

Poiché abbiamo scoperto che il file JSP viene convertito in un normale servlet, puoi scrivere il normale codice Java al suo interno. E in questo codice Java, puoi usare varie classi (Math dall'esempio). Questo è ancora meglio! Ma possiamo vedere che tutto il codice è stato spostato in un doGet()metodo servlet. E questo solleva immediatamente diverse domande:

  • Come fare in modo che il codice venga spostato nel metodo doPost()?
  • Come aggiungere il proprio codice al metodo init()?
  • Come alla fine registrare le importazioni di classe?

Ottime domande e, naturalmente, hanno una risposta: le direttive JSP. Tutto il codice non HTML all'interno di un JSP deve essere racchiuso tra parentesi speciali <%e %>. Tutte le direttive JSP sono fornite da un modello:

<%@ directive %>

Ecco un elenco degli attributi delle direttive di pagina più popolari:

Esempio Descrizione
1 importare <%@ page import="java.util.Date" %> Importa una classe
2 tipo di contenuto <%@ page contentType=text/html %> Imposta contentType
3 estende <%@ page extends="Object" %> Puoi impostare la classe base
4 informazioni <%@ page info="Author: Peter Ivanovich; version:1.0" %> Imposta i dati per getServletInfo()
5 respingente <%@ page buffer="16kb" %> Imposta la dimensione del buffer di risposta
6 lingua <%@ page language="java" %> Specifica la lingua, il valore predefinito è Java
7 isELIgnorato <%@ page isELIgnored="true" %> Consente di disabilitare gli script EL
8 èThreadSafe <%@ page isThreadSafe="false" %> Punta a thread-safe
9 autolavaggio <%@ page autoFlush="false" %> Gestisce le scritture nel buffer
10 sessione <%@ page session="false" %> Puoi disabilitare la sessione per la pagina
undici pageEncoding <%@ page pageEncoding="UTF-8"%> È possibile impostare la codifica della pagina
12 errorPage <%@ page errorPage="errorpage.jsp" %> È possibile impostare una pagina di errore

2.2 Importazioni

Aggiungiamo alcune importazioni al nostro file JSP per divertimento e definiamo una classe base.

Esempio di file JSP:


 <%@ page import="java.util.Date" %> <%@ page import="java.lang.Math" %> <%@ page extends="com.codegym.MyHttpServlet" %> 
 
    <html> 
    <body> 
 <%
 double num = Math.random(); if (num > 0.95) {
 %>
         <h2>You are lucky, user!</h2><p>(<%= num %>)</p>
 <%
 }
 %> 
  </body> 
   </html> 

E questo è ciò che ne verrà fuori:

import java.util.Date;
import java.lang.Math;

public class HelloServlet extends com.codegym.MyHttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response)  throws Exception {
    PrintWriter out = response.getWriter();
    out.print("<html> ");
    out.print("<body> ");
        double num = Math.random();
        if (num >  0.95) {
             out.print("<h2> You're lucky, user! </h2> <p> (" + num + ")</p> ");
        }
    out.print("</body> ");
    out.print("</html> ");
    }
}

Lavori. Grande!

Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION