English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
impliquant WEB-La structure de l'application Web du sous-répertoire INF est la norme standard de toutes les applications Java Web, et est spécifiée par la norme Servlet API. Donné un nom de répertoire de niveau supérieur myapp, la structure du répertoire est la suivante :
/myapp /images /WEB-INF /classes /lib
WEB-Le sous-répertoire INF contient la description de déploiement de l'application, nommée web.xml. Tous les fichiers HTML se trouvent dans le répertoire de niveau supérieur myapp ci-dessous. Pour l'utilisateur admin, vous trouverez que le répertoire ROOT est le répertoire parent de myApp.
WEB-INF/Le répertoire classes contient toutes les classes Servlet et autres fichiers de classes, et la structure du répertoire des fichiers de classes correspond à leurs noms de paquet. Par exemple, si vous avez un nom de classe complet com.myorg.MyServlet,alors cette classe Servlet doit être située dans le répertoire suivant :
/myapp/WEB-INF/classes/com/myorg/MyServlet.class
L'exemple suivant crée un paquet nommé com.myorg la classe MyServlet.
// Nommer le paquet package com.myorg; // Importer les bibliothèques java nécessaires import java.io.*; import javax.servlet.*; import javax.servlet.http.*; @WebServlet("/MyServlet) public class MyServlet extends HttpServlet { private String message; public void init() throws ServletException { // Exécuter l'initialisation nécessaire message = "Hello World"; } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // définir le type de contenu de la réponse response.setContentType("text/html;charset=UTF-8); // La logique réelle est ici PrintWriter out = response.getWriter(); out.println("<h1">" + message + "</h1); } public void destroy() { // ne rien faire } }
La compilation des classes dans un paquetage n'est pas fondamentalement différente de la compilation d'autres classes. La méthode la plus simple consiste à laisser vos fichiers java conserver des chemins pleinement qualifiés, comme les classes mentionnées ci-dessus, qui seront conservées dans com.myorg. Vous devez également ajouter ce répertoire au CLASSPATH.
Si votre environnement est correctement configuré, accédez à <Tomcat-installation-directory>/webapps/ROOT/WEB-INF/classes dans le répertoire, et compilez MyServlet.java comme suit :
$ javac MyServlet.java
Si le Servlet dépend de autres bibliothèques, alors vous devez également les référencer dans le CLASSPATH. Ici, je ne fais que référencer servlet-fichier JAR api.jar, car je n'utilise aucune autre bibliothèque dans mon programme Hello World.
Cette ligne de commande utilise le compilateur javac intégré, qui est fourni avec le Java Software Development Kit (JDK, abrégé en Java Software Development Kit) de Sun Microsystems. Java Software Development Kit (JDK) de Sun Microsystems. Pour que cette commande fonctionne correctement, vous devez inclure l'emplacement du SDK Java que vous utilisez dans l'environnement PATH.
Si tout se passe bien, le compilation génèrera le même répertoire. MyServlet.class fichier. La section suivante expliquera comment déployer un Servlet compilé en production.
par défaut, l'application Servlet est située sur le chemin <Tomcat-installation-directory>/webapps/sous le répertoire ROOT, et les fichiers de classes sont placés dans <Tomcat-installation-directory>/webapps/ROOT/WEB-INF/dans les classes.
Si vous avez un nom de classe complet et qualifié com.myorg.MyServletThen, this Servlet class must be located in the WEB-INF/classes/com/myorg/In the MyServlet.class file, you need to be located in the directory <Tomcat-installation-directory>/webapps/ROOT/WEB-INF/ Create the following entry in the web.xml file:
<servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>com.myorg.MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/MyServlet</url-pattern> </servlet-mapping>
The above entries need to be created in the <web-app>.../web-app> tag inside. There may already be various available entries in this file, but don't mind.
Up to this point, you have basically completed, now let's use the <Tomcat-installation-directory>\bin\startup.bat (on Windows) or <Tomcat-installation-directory>/bin/startup.sh (on Linux)/Start the tomcat server on systems such as Solaris, and finally enter http://localhost:8080/MyServletIf everything goes well, you will see the following result:
Hello World |