Exportieren von Projekten und Kriegsdateien beim Erstellen von serverseitigem Java in Eclipse

Aus dem Fazit scheint es gut, es mit "Dynamic Web Project" zu schaffen.

Neulich habe ich ein einfaches Servlet + JSP-Projekt "Tomcat-Projekt" unter dem Titel Erstellen einer Memo-App mit Tomcat + JSP + Servlet + MySQL mit Eclipse genannt. Ich habe es mit Maven erstellt, aber selbst wenn ich im Kontextmenü des Projekts [Tomcat-Projekt] -> [WAR-Datei gemäß Projekteinstellungen erstellen] auswähle, kann eine Datei erstellt werden, die eine verfestigte Datei im Projekt ist Es war ein wenig subtil, also habe ich einige Nachforschungen angestellt.

Außerdem [In Maven-Projekt konvertieren](https://qiita.com/zaki-lknr/items/32690b071abf202281d6#tomcat%E3%83%97%E3%83%AD%E3%82%B8%E3%82% A7% E3% 82% AF% E3% 83% 88% E3% 82% 92maven% E3% 81% AB% E5% A4% 89% E6% 8F% 9B% E3% 81% 99% E3% 82% 8B) Das Maven-Projekt hat eine empfohlene Verzeichnisstruktur, und die Konvertierungsfunktion von Eclipse wird erst nach dieser Konfigurationskonvertierung ausgeführt. Wenn Sie also Maven verwenden möchten, ist es besser, es von Anfang an als Maven-Projekt zu erstellen. ..

Ein Projekt erstellen

Erstellt mit einem dynamischen Webprojekt

Zusätzlich zum Erstellen eines Tomcat-Projekts gibt es ein "Dynamisches Webprojekt", das Sie auswählen können.

image.png

Erstellt mit Mavens Maven-Archetyp-Webapp

Wenn Sie Maven zum Verwalten von Bibliotheken und Builds verwenden möchten, wählen Sie "Maven Project" anstelle von "Dynamic Web Project" und wählen Sie "maven-archetype-webapp", ohne "Archetype Selection überspringen" zu aktivieren. Erstellen Sie ein Projekt durch Angabe

image.png

image.png

Dieses Projekt wird ein dynamisches Webprojekt sein, das Maven verwenden kann

Kriegsdatei erstellen

Für Tomcat-Projekte

Sie können eine War-Datei aus [Tomcat-Projekt] -> [WAR-Datei gemäß Projekteinstellungen erstellen] im Kontextmenü des Projekts erstellen (* Geben Sie im Voraus "WAR-Exporteinstellungen" in die Tomcat-Einstellungen der Projekteigenschaften ein.

image.png

image.png

Beim Erstellen dieser War-Datei wurden jedoch keine externen JAR-Dateien (JDBC usw.) berücksichtigt, selbst wenn die Exporteinstellungen des Erstellungspfads vorgenommen wurden, und wie ich zu Beginn schrieb, wurden das Verzeichnis ".settings" und andere unnötige Dinge nicht berücksichtigt. Enthalten und sehr subtil. (Wenn Sie auf Tomcat bereitstellen, funktioniert es) Wenn das externe JAR in der Projektkonfiguration enthalten ist (/ WEB-INF / lib / ***. JAR usw.), wird es in die War-Datei aufgenommen (in diesem Fall wird es jedoch als Maven-Projekt doppelt verwaltet). ich fühle mich wie

[Exportieren] des normalen Menüs ist nicht möglich. (Nicht im Zielprojekt enthalten)

Für dynamische Webprojekte

Da es sich in Eclipse nicht um ein Tomcat-Projekt handelt, kann es nicht über das Tomcat-Menü erstellt werden (es gibt kein Menü). Sie können jedoch im Kriegsformat aus [Datei (F)] -> [Exportieren (O)] im normalen Menü exportieren.

image.png

image.png

Legen Sie hier das Ziel (Ziel der Kriegsdatei speichern) entsprechend fest, indem Sie auf die Schaltfläche [Durchsuchen] klicken und auf [Fertig stellen] klicken, um die Kriegsdatei zu erstellen. Im Fall von Mavens von maven-archetype-webapp angegebenem Projekt wird es in eine Kriegsdatei exportiert, die die von Maven eingeführte externe Bibliothek wie JDBC enthält. Bei einem dynamischen Webprojekt handelt es sich nur um eine Datei in der Projektkonfiguration wie die War-Datei des Tomcat-Projekts (wenn sie sich auf eine Datei außerhalb des Projekts bezieht, ist sie nicht in der War-Datei enthalten).

Erstellen einer neuen Servlet-Klasse

Für Tomcat-Projekte

[Erstellen aus "Klasse" erstellen, da die "Servic" -Erstellung im neuen Menü nicht verwendet werden kann](https://qiita.com/zaki-lknr/items/32690b071abf202281d6#%E3%82%B5%E3%83% BC% E3% 83% 96% E3% 83% AC% E3% 83% 83% E3% 83% 88% E3% 81% AE% E4% BD% 9C% E6% 88% 90)

Für dynamische Webprojekte

Erstellen Sie aus "Servlet" im neuen Menü

image.png

image.png

Angeben der URL-Zuordnung (entsprechend der Quellanmerkung "@ WebServlet")

image.png

Sie können auch auswählen, welche Methode beim Erstellen der Quelldatei überschrieben werden soll.

image.png

Ausgabequelle

ExampleServlet.java


package jp.example.www;

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

/**
 * Servlet implementation class MainServlet
 */
@WebServlet(description = "Hauptbildschirm", urlPatterns = { "/" })
public class MainServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public MainServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		response.getWriter().append("Served at: ").append(request.getContextPath());
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

Für maven-archetype-webapp

Gleiches gilt für Java-Dateien wie für dynamische Webprojekte. In diesem Projekt werden die URL-Zuordnung und die Metainformationen der Beschreibung in "src / main / webapp / WEB-INF / web.xml" beschrieben. Wenn sie aus dem neu erstellten "Servlet" -Menü stammen, werden sie automatisch aktualisiert. Werde es tun.

Recommended Posts

Exportieren von Projekten und Kriegsdateien beim Erstellen von serverseitigem Java in Eclipse
In Java 10, wenn Gradle Eclipse abgeschlossen ist und JavaSE-1.10 herauskommt, ...
Lesen und Schreiben von GZIP-Dateien in Java
Fügen Sie .gitignore hinzu, wenn Sie ein Projekt in Xcode erstellen
Wenn das Projekt nicht in Eclipse angezeigt wird
[Java] Eclipse-Verknüpfungen, die verbessert werden können, indem Sie wissen, wann Sie zwischen Quellcode in einem Projekt hin und her wechseln
Eclipse ~ Java-Projekterstellung ~
Lesen Sie Binärdateien in Java 1
Nullsicheres Programm in Java (Eclipse)
Lesen Sie Binärdateien in Java 2
Erste Java-Entwicklung in Eclipse
Wenn Tomcat in Eclipse gestartet wird, wird "ClassNotFoundException" angezeigt und kann nicht gestartet werden.
Einfaches Lesen von Textdateien in Java (Java 11 & Java 7)
Beispiel für Codierung und Decodierung in Java
Versuchen Sie, Selenuim 3.141.59 mit Eclipse (Java) auszuführen.
Erstellen Sie ein Java-Projekt mit Eclipse
Hallo Welt von Java in Eclipse jetzt
StringBuffer- und StringBuilder-Klasse in Java
Verstehe gleich und hashCode in Java
Führen Sie eine Phrasenanalyse in Java 8 durch (Teil 2).
JPA (Java Persistence API) in Eclipse
Erstellen einer Phrasenanalyse in Java 8 (Teil 1)
Hallo Welt in Java und Gradle
Geben Sie die Reihenfolge an, in der die Konfigurationsdateien und Klassen in Java geladen werden
So legen Sie fest, dass Tabulatoren und Leerzeichen sichtbar sind, indem Sie mit der Tabulatortaste Leerzeichen in Java-Dateien in Eclipse einfügen