Maison > Java > javaDidacticiel > Comment les servlets Java sont-ils déployés et exécutés ?

Comment les servlets Java sont-ils déployés et exécutés ?

WBOY
Libérer: 2024-04-17 09:33:01
original
886 Les gens l'ont consulté

Les servlets Java sont déployés et exécutés via des conteneurs de servlets. Le déploiement implique d'écrire une classe Servlet, de la conditionner sous forme de fichier WAR et de la copier dans le répertoire de déploiement du conteneur. Le conteneur charge le fichier WAR, crée une instance de servlet et appelle les méthodes de servlet pour générer une réponse lorsque le client la demande. Par exemple, pour déployer un servlet à l'aide de Tomcat, définissez d'abord le servlet et son mappage d'URL, puis regroupez-le avec la classe Servlet dans my-servlet.war. Copiez le fichier WAR dans le répertoire webapps de Tomcat et démarrez le serveur. L'accès à l'URL spécifiée exécute le servlet, qui génère une réponse contenant "Hello World!"

Java Servlet是如何部署和运行的?

Déploiement et exécution de Java Servlet

Présentation

Java Servlet est un composant Web Java utilisé pour générer du contenu Web dynamique. Il est déployé et exécuté via un conteneur Servlet tel que Tomcat ou Jetty.

Déployer le servlet

Le déploiement du servlet implique les étapes suivantes :

  1. Développer le servlet : Écrire une classe servlet, héritant de l'interface javax.servlet.Servlet. javax.servlet.Servlet 接口。
  2. 打包 Servlet:将 Servlet 类打包成 WAR(Web Archive)文件。WAR 文件是一个 ZIP 文件,包含 Servlet 类、其他依赖库和部署描述符(web.xml)。
  3. 复制 WAR 文件:将 WAR 文件复制到 Servlet 容器的部署目录。

运行 Servlet

Servlet 容器负责运行已部署的 Servlet。当客户端请求与该 Servlet 对应的 URL 时:

  1. 容器加载 WAR 文件:Servlet 容器加载包含 Servlet 类和描述符的 WAR 文件。
  2. 创建 Servlet 实例:容器为每个 Servlet 创建一个实例。
  3. 调用 Servlet 的生命周期方法:容器调用 Servlet 的 init()service()destroy() 方法来初始化、处理请求并销毁 Servlet。
  4. 生成响应:Servlet 生成 HTML、JSON 或其他格式的响应。

实战案例

以下是一个使用 Tomcat 部署和运行 Servlet 的示例:

web.xml(部署描述符):

<web-app>
  <servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>com.example.MyServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>MyServlet</servlet-name>
    <url-pattern>/myServlet</url-pattern>
  </servlet-mapping>
</web-app>
Copier après la connexion

MyServlet.java(Servlet 类):

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class MyServlet extends HttpServlet {
  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    resp.getWriter().write("<h1>Hello World!</h1>");
  }
}
Copier après la connexion

部署和运行:

  1. web.xmlMyServlet.java 打包成名为 my-servlet.war 的 WAR 文件。
  2. my-servlet.war 复制到 Tomcat 的 webapps 目录。
  3. 启动 Tomcat。
  4. 在浏览器中访问 http://localhost:8080/myServlet
Package Servlet : 🎜Emballez la classe Servlet dans un fichier WAR (Web Archive). Un fichier WAR est un fichier ZIP qui contient la classe Servlet, d'autres bibliothèques dépendantes et un descripteur de déploiement (web.xml). 🎜🎜🎜Copier le fichier WAR : 🎜Copiez le fichier WAR dans le répertoire de déploiement du conteneur Servlet. 🎜🎜🎜Exécuter le servlet🎜🎜Le conteneur Servlet est responsable de l'exécution du servlet déployé. Lorsqu'un client demande l'URL correspondant à ce Servlet : 🎜🎜🎜🎜Le conteneur charge le fichier WAR : 🎜Le conteneur Servlet charge le fichier WAR qui contient la classe et le descripteur du Servlet. 🎜🎜🎜Créer des instances de servlet : 🎜Le conteneur crée une instance pour chaque servlet. 🎜🎜🎜Appelez les méthodes de cycle de vie du Servlet : 🎜Le conteneur appelle les méthodes init(), service() et destroy() du Servlet pour initialisez, traitez la requête et détruisez le servlet. 🎜🎜🎜Générer une réponse : 🎜Servlet génère une réponse en HTML, JSON ou autres formats. 🎜🎜🎜Cas pratique🎜🎜Voici un exemple d'utilisation de Tomcat pour déployer et exécuter un Servlet : 🎜🎜🎜web.xml (descripteur de déploiement) : 🎜🎜rrreee🎜🎜MyServlet.java (Classe Servlet) : 🎜🎜rrreee🎜 🎜Déploiement Et exécutez : 🎜🎜🎜🎜Emballez web.xml et MyServlet.java dans un fichier WAR nommé my-servlet.war. 🎜🎜Copiez my-servlet.war dans le répertoire webapps de Tomcat. 🎜🎜Démarrez Tomcat. 🎜🎜Visitez http://localhost:8080/myServlet dans votre navigateur. Vous devriez voir une page indiquant « Hello World ! » 🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal