[JAVA] À propos de [servlet] [JSP] [tomcat]

introduction

J'étudie actuellement servlet / JSP / tomcat à paiza. J'écrirai Keta dans le cadre de la sortie.

Qu'est-ce que le servlet

C'est un programme écrit en JAVA qui s'exécute sur un serveur WEB. Mon travail consiste à répondre aux demandes des navigateurs WEB.

Qu'est-ce que JSP

Le servlet a effectué le traitement interne, mais le JSP fait le travail d'afficher les caractères à l'écran. JAVA est intégré au HTML et WEB est affiché dynamiquement. C'est un fichier erb dans les rails.

Qu'est-ce que Tomcat

Il s'agit d'un conteneur de servlet utilisé lors de l'exécution de servlets et de JSP. Lorsqu'une requête HTTP arrive, je demande au servlet de le faire fonctionner.

Méthode de base pour écrire un servlet / JSP

Créer un fichier Java

Créez un fichier comme HelloWorld.java dans tomcat / webapps / nom de fichier correspondant.

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorld extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException {
        
         //Configuré pour lire le fichier JSP à créer ultérieurement
        String view = "/WEB-INF/views/index.jsp";
        RequestDispatcher dispatcher = request.getRequestDispatcher(view);
        dispatcher.forward(request, response);
    }
}

Compiler

Compilez lorsque vous avez fini d'écrire.

> cd tomcat/webapps/Nom de fichier correspondant

> javac -classpath "../../lib/servlet-api.jar" -d WEB-INF/classes HelloWorld.java

Élimine le besoin de redémarrer tomcat

Créez mywork.xml dans tomcat / conf / Catalina / localhost et écrivez ce qui suit.


<Context
reloadable="true"/>

Créer un fichier jsp

Créez un répertoire de vues dans tomcat / webapps / nom de fichier correspondant / WEB-INF. Et créez-y index.jsp.


<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Hello World</title>
    </head>
    <body>
        <h1>Hello World</h1>
    </body>
</html>

Spécifiez le routage.

Créez web.xml dans tomcat / webapps / nom de fichier correspondant / WEB-INF.


<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
        http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
        version="4.0" metadata-complete="true">

    <servlet>
        <servlet-name>Hello</servlet-name>
        <servlet-class>HelloWorld</servlet-class> //Nom de classe du fichier java créé précédemment
    </servlet>
    <servlet-mapping>
        <servlet-name>Hello</servlet-name>
        <url-pattern>/hello</url-pattern> //Décrivez le chemin
    </servlet-mapping>

</web-app>

Maintenant, lorsque vous accédez avec le fichier / URL correspondant appelé bonjour, Hello World sera affiché.

Balise JSP

Les types de balises utilisés lors de l'incorporation de JAVA dans JSP sont les suivants. C'est la partie <%%> des rails.

//Exécution du code
<% %> 
//Exécutez le code et imprimez les résultats
<%= %>
//Déclaration JSP (index).Utilisé au début de jsp)
<%@ %>
//Déclaration des méthodes et des variables
<%! %>
//commentaire
<%- -%>

Les données sont envoyées du servlet vers JSP et affichées.

au servlet

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorld extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException {
       
       //request est le HttpServletRequest ci-dessus.
       //Hello world s'affiche lorsque le message est utilisé dans JSP. Notez qu'il s'agit d'un setAttribute.
       request.setAttribute("message", "Hello world");
    }
}

Du côté JSP


<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Hello Template</title>
    </head>
    <body>
        
        //Extrayez le message précédent de l'objet de requête. Notez qu'il s'agit de getAttribute.
        //Transtyper en type String, attribuer au message de type String et afficher sous forme de.
        <% String message = (String)request.getAttribute("message");%>
        <p><%= message %></p>
    </body>
</html>

À la fin

C'était facile, mais je l'ai résumé!

Recommended Posts

À propos de [servlet] [JSP] [tomcat]
À propos du téléchargement d'images de jsp (servlet)
JSP sur Tomcat
[Eclipse / Tomcat] Servlet + JSP dans le projet webapp de Maven
Dessin d'une vue Servlet / JSP Java
Premiers pas avec JSP et servlet
Affichage d'erreur JSP à partir du servlet
Mémo de développement d'applications Web avec MVN, Tomcat, JSP / Servlet avec VScode
Comment utiliser scope (JSP & Servlet)
Créez une application mémo avec Tomcat + JSP + Servlet + MySQL à l'aide d'Eclipse
Servlet
Portée de la requête Java Servlet / JSP, partie 2
Passer des paramètres de JSP avec un servlet
Je ne suis pas sûr de Java Servlet
Hello World avec GlassFish 5.1 + Servlet + JSP
À propos =
Déployer les applications JavaServlet localement dans Tomcat
[Introduction à JSP + Servlet] Une petite animation ♬