Ich habe es lange Zeit der IDE überlassen und wusste nicht, wie man Servlet macht, also habe ich es auf meiner eigenen Maschine gebaut und studiert.
Maschine: Macbook Pro OS:MacOS Mojave
Grundsätzlich arbeite ich gemäß der folgenden Seite, aber da es viele Teile für Windows gab, habe ich diesen Bereich angeordnet. https://www.javadrive.jp/servlet/
Beschrieben als "/ Users / [MacBook-Benutzername] /" = "~ /".
Java ist bereits in der Maschine, daher werde ich es weglassen. Die Version ist unten.
$java -version
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
Da es sich um eine persönliche Entwicklung handelt, können Sie Java kostenlos verwenden. https://java.com/ja/download/
Die Oracle Technology Network-Lizenzvereinbarung für die neue Oracle Java SE unterscheidet sich stark von der vorherigen Oracle Java-Lizenz. Die neue Lizenz erlaubt bestimmte Verwendungen kostenlos, z. B. für den persönlichen Gebrauch oder für Entwicklungszwecke, erlaubt jedoch keine anderen Verwendungen mehr, die unter der vorherigen Oracle Java-Lizenz lizenziert wurden. Bitte lesen Sie die Bedingungen sorgfältig durch, bevor Sie dieses Produkt herunterladen und verwenden.
Ich habe es von folgenden heruntergeladen. http://tomcat.apache.org/
Download mit der neuesten Version "9.0.30". Wählen Sie Binärverteilungen> Kern> Zip. Da es in README wie folgt geschrieben wurde, habe ich es zip anstelle von tar gemacht. http://us.mirrors.quenda.co/apache/tomcat/tomcat-9/v9.0.30/README.html
NOTE: The tar files in this distribution use GNU tar extensions, and must be untarred with a GNU compatible version of tar. The version of tar on Solaris and Mac OS X will not work with these files.
Entpacken Sie die Zip-Datei (doppelklicken Sie darauf, um sie zu entpacken) und verschieben Sie sie an einen leicht verständlichen Ort. In meinem Fall habe ich Folgendes getan.
Tomcat, der eingefügt werden kann, hängt von der Java-Version ab. (Dieses Mal habe ich bestätigt, dass Java 8 auf meinem Computer installiert ist, also habe ich 9.3.0.90 installiert.) Siehe unten für Details. https://tomcat.apache.org/whichversion.html
Es scheint einfacher zu sein, Homebrew zu verwenden. https://formulae.brew.sh/formula/
Dieses Mal wollte ich die Umgebungsvariable anwenden, auch wenn ich ein anderes Terminal geöffnet habe, also habe ich sie auf ./bashrc und ./bash_profile gesetzt. Ich hatte weder ./bashrc noch ./bash_profile auf meinem Computer, also habe ich es dieses Mal erstellt.
Der Ort der Schöpfung ist wie folgt. ~/.bash_profile ~/.bashrc
Die Dateierstellung erfolgt im Terminal.
$cd ~/
$touch ./bash_profile
$touch ./bashrc
$ls -la
→ Hier ".bash_Profil "und".OK, wenn "bashrc" angezeigt wird
Bearbeiten Sie den Inhalt mit vim.
$vi .bash_profile
→ Drücken Sie die Taste "a", um den Einfügemodus aufzurufen, und geben Sie dann den Inhalt der Datei ein.
→ Wenn Sie fertig sind, drücken Sie die Taste "esc" und klicken Sie auf ":Drücken Sie "wq". Wenn Sie einen Fehler machen, ":q!Wenn Sie dies tun, wird es nicht gespeichert
$vi .bashrc
→ Wie oben.
Der Inhalt jeder Datei ist wie folgt.
.bash_profile
# ~/.bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
.bashrc
# EXPORT
export CATALINA_HOME=/Applications/Tomcat/apache-tomcat-9.0.30
# ALIAS
alias ll='ls -la'
Laden Sie im Terminal den zuletzt eingestellten Inhalt in die Maschine. (Wenn Sie dies nicht tun, wird nichts für immer passieren)
$source ~/.bashrc
$source ~/.bash_profile
Informationen zu Einstellungen für Umgebungsvariablen finden Sie auf der folgenden Website https://techracho.bpsinc.jp/hachi8833/2019_06_06/66396 https://qiita.com/hirokishirai/items/5a529c8395c4b336bf31 https://qiita.com/shyamahira/items/260862743e4c9794b5d2
Auf der Site, die sich auf das Verfahren bezog, steht "Ich denke, Tomcat läuft noch", aber diesmal gab es keinen Start.
~/study/20191222_servlet-sample
Der Lagerort ist wie folgt. ~/study/20191222_servlet-sample/helloworld/
[Das Verzeichnis, das Sie gerade erstellt haben]
index.html
<html>
<head>
<title>Indexseitenprüfung</title>
<meta charset="utf-8" />
</head>
<body>
<h1>test_oberste Seite</h1>
</body>
</html>
Ich möchte, dass die Tomcat-Seite das erstellte Verzeichnis erkennt. Schreiben Sie daher die Einstellungsdatei.
Erstellen Sie ein Verzeichnis wie folgt. /Applications/Tomcat/apache-tomcat-9.0.30/conf ↓ /Applications/Tomcat/apache-tomcat-9.0.30/conf/Catalina/localhost
[Applications]
Erstellen Sie unten die Datei hello.xml. /Applications/Tomcat/apache-tomcat-9.0.30/conf/Catalina/localhost/hello.xml
[Applications]
hello.xml
<Context path="/hello" docBase="/Users/[MacBook-Benutzername]/study/20191222_servlet-sample/helloworld" />
-Es ist notwendig, den XML-Namen und den Pfadnamen abzugleichen. -Der angegebene Name wird nach dem FQDN angegeben. * Diesmal http: // localhost: 8080 / hallo
Starten Sie Tomcat über das Terminal
$cd $CATALINA_HOME/bin
$./startup.sh
Greifen Sie auf die unten stehende URL zu. Wenn die zuvor erstellte index.html angezeigt wird, ist dies in Ordnung. http://localhost:8080/hello
Beenden Sie Tomcat über das Terminal
$cd $CATALINA_HOME/bin
$./startup.sh
Erstellen Sie HelloWorld.java an einem beliebigen Ort. In meinem Fall erstellen Sie es unten. ~/study/20191222_servlet
Der Inhalt entspricht dem von https://www.javadrive.jp/servlet/context/index1.html.
Kompilieren.
cd ~/study/20191222_servlet
ls
→ Vergewissern Sie sich, dass HelloWorld.java hier vorhanden ist
javac HelloWorld.java
→ Kompilierung fehlgeschlagen (es gibt kein JAR für Servlets) Bei Verwendung von Servlet muss der Klassenpfad des Servlet-JARs angegeben und kompiliert werden. (Umgekehrt müssen Sie nichts anderes angeben)
javac -classpath $CATALINA_HOME/lib/servlet-api.jar HelloWorld.java
→ Kompilieren erfolgreich und schnell abgeschlossen.
Stellen Sie sicher, dass Sie die Klassendatei haben, wenn Sie fertig sind. (Überprüfen Sie mit ls Befehl oder Finder)
$ ll
total 16
drwxr-xr-x 4 hoge staff 128 12 25 22:08 .
drwxr-xr-x 5 hoge staff 160 12 25 21:43 ..
-rw-r--r-- 1 hoge staff 894 12 25 22:08 HelloWorld.Klasse ← dies
-rw-r--r--@ 1 hoge staff 583 12 25 22:08 HelloWorld.java
Verschieben Sie HelloWorld.Class unter Klassen in das gerade erstellte Verzeichnis. ~/study/20191222_servlet-sample/helloworld/classes/HelloWorld.class
[Das Verzeichnis, das Sie gerade erstellt haben]
Stellen Sie web.xml so ein, dass über die URL auf die platzierte Klassendatei zugegriffen wird. ~/study/20191222_servlet-sample/helloworld/WEB-INF/web.xml
[Das Verzeichnis, das Sie gerade erstellt haben]
Der Inhalt entspricht dem von https://www.javadrive.jp/servlet/context/index3.html.
web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<servlet>
<servlet-name>helloworld</servlet-name>
<servlet-class>HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>helloworld</servlet-name>
<url-pattern>/helloworld</url-pattern>
</servlet-mapping>
</web-app>
Artikelname | Inhalt |
---|---|
servlet-name | Wird nur zum Verknüpfen in XML verwendet |
servlet-class | Schreiben Sie den zuvor erstellten Klassendateinamen "HelloWorld" |
url-pattern | Sie können auf der Grundlage des angegebenen Werts über eine URL zugreifen |
Diesmal ist der Fluss beispielsweise wie folgt.
Starten Sie Tomcat über das Terminal
$cd $CATALINA_HOME/bin
$./startup.sh
Greifen Sie auf die unten stehende URL zu. Wenn das in HelloWorld.java beschriebene HTML angezeigt wird, ist es in Ordnung. http://localhost:8080/hello/helloworld
Beenden Sie Tomcat über das Terminal
$cd $CATALINA_HOME/bin
$./startup.sh
-Es war ziemlich mühsam zu kompilieren, zurückzusetzen und zu starten. Ich fand es sehr mühsam, obwohl ich diesmal nur eine zusammengestellt habe. (Wird es weniger lästig sein, wenn Sie sich daran gewöhnt haben?) Kein Wunder, dass es etwas gab, das automatisch kompiliert wurde (+ bei Bedarf platzieren).