@WebServletのアノテーションで、このクラスをサーブレットとして登録し、特定のURLパターンで動くようにする。
WebServlet (Servlet 3.0 API Documentation - Apache Tomcat 7.0.109)
【Java & Tomcat】Webアプリケーションの設定(アノテーション)※サンプルプログラム付き
今回はFedora41でシェルとVimだけでやる。
dnfでtomcatをインストール。
bg1@vbox:~/project/cloud/github.com/Sample/servlet/annotationWebServlet/annotationWebServlet/src$ sudo dnf install tomcat リポジトリの更新を読み込み中: リポジトリを読み込みました。 Package Arch Version Repository Size Installing: tomcat noarch 1:9.0.107-1.fc41 updates 323.7 KiB Installing dependencies: ecj noarch 1:4.23-11.fc41 fedora 2.6 MiB javapackages-tools noarch 6.2.0-14.fc41 fedora 68.1 KiB tomcat-el-3.0-api noarch 1:9.0.107-1.fc41 updates 228.9 KiB tomcat-jsp-2.3-api noarch 1:9.0.107-1.fc41 updates 145.4 KiB tomcat-lib noarch 1:9.0.107-1.fc41 updates 7.0 MiB tomcat-servlet-4.0-api noarch 1:9.0.107-1.fc41 updates 611.7 KiB Installing weak dependencies: tomcat-native x86_64 1:1.3.0-8.fc41 updates 212.6 KiB Transaction Summary: Installing: 8 packages パッケージサイズ 9 MiB 、ダウンロードサイズ 9 MiB 。 完了後、11 MiB のサイズが利用されます(インストール 11 MiB、削除 0 B)。 Is this ok [y/N]: y [1/8] javapackages-tools-0:6.2.0-14.fc41.noarch 100% | 166.9 KiB/s | 36.6 KiB | 00m00s [2/8] tomcat-1:9.0.107-1.fc41.noarch 100% | 40.2 KiB/s | 96.3 KiB | 00m02s [3/8] tomcat-el-3.0-api-1:9.0.107-1.fc41.noarch 100% | 47.4 KiB/s | 105.4 KiB | 00m02s [4/8] tomcat-lib-1:9.0.107-1.fc41.noarch 100% | 1.7 MiB/s | 6.1 MiB | 00m04s [5/8] tomcat-jsp-2.3-api-1:9.0.107-1.fc41.noarch 100% | 42.3 KiB/s | 73.2 KiB | 00m02s [6/8] ecj-1:4.23-11.fc41.noarch 100% | 2.9 MiB/s | 2.4 MiB | 00m01s [7/8] tomcat-servlet-4.0-api-1:9.0.107-1.fc41.noarch 100% | 145.0 KiB/s | 285.1 KiB | 00m02s [8/8] tomcat-native-1:1.3.0-8.fc41.x86_64 100% | 24.7 KiB/s | 75.0 KiB | 00m03s ------------------------------------------------------------------------------------------------------------------------------------------------------------- [8/8] Total 100% | 1.1 MiB/s | 9.2 MiB | 00m09s トランザクションを実行中 [ 1/10] パッケージ ファイルを検証 100% | 102.0 B/s | 8.0 B | 00m00s [ 2/10] トランザクションの準備 100% | 19.0 B/s | 8.0 B | 00m00s [ 3/10] インストール中 tomcat-servlet-4.0-api-1:9.0.107-1.fc41.noarch 100% | 6.3 MiB/s | 613.3 KiB | 00m00s [ 4/10] インストール中 tomcat-el-3.0-api-1:9.0.107-1.fc41.noarch 100% | 3.8 MiB/s | 230.5 KiB | 00m00s [ 5/10] インストール中 javapackages-tools-0:6.2.0-14.fc41.noarch 100% | 1.3 MiB/s | 71.9 KiB | 00m00s [ 6/10] インストール中 ecj-1:4.23-11.fc41.noarch 100% | 65.5 MiB/s | 2.6 MiB | 00m00s [ 7/10] インストール中 tomcat-jsp-2.3-api-1:9.0.107-1.fc41.noarch 100% | 3.3 MiB/s | 146.7 KiB | 00m00s [ 8/10] インストール中 tomcat-lib-1:9.0.107-1.fc41.noarch 100% | 16.9 MiB/s | 7.0 MiB | 00m00s [ 9/10] インストール中 tomcat-1:9.0.107-1.fc41.noarch 100% | 3.1 MiB/s | 330.4 KiB | 00m00s [10/10] インストール中 tomcat-native-1:1.3.0-8.fc41.x86_64 100% | 69.8 KiB/s | 214.5 KiB | 00m03s 完了しました! bg1@vbox:~/project/cloud/github.com/Sample/servlet/annotationWebServlet/annotationWebServlet/src$
次に、
bg1@vbox:~/project/cloud/github.com/Sample/servlet/annotationWebServlet/annotationWebServlet/src$ cd /var/lib/tomcat/webapps/ bg1@vbox:/var/lib/tomcat/webapps$ sudo mkdir -p annotationWebServlet/WEB-INF/classes
webappsの下に移動し、classessまでディレクトリ作成。
ServletMain.javaは、
こう書く。
sudo javac -cp /usr/share/java/tomcat-servlet-api.jar:. ServletMain.java
sudo systemctl enable --now tomcat
tomcat起動。

こうなる。