IDEA 2020.3.1 で Tomcat をデプロイし、最初の Web プロジェクトを作成するプロセスの詳細な説明

IDEA 2020.3.1 で Tomcat をデプロイし、最初の Web プロジェクトを作成するプロセスの詳細な説明

Tomcat の紹介

Tomcat は、Apache Software Foundation の Jakarta プロジェクトのコア プロジェクトであり、Apache、Sun、およびその他の企業や個人によって共同で開発されています。 Sun の参加とサポートのおかげで、最新の Servlet および JSP 仕様を常に Tomcat に反映できます。Tomcat 5 は、最新の Servlet 2.4 および JSP 2.0 仕様をサポートしています。 Tomcat は高度な技術、安定したパフォーマンス、そして無料であることから、Java 愛好家に深く愛され、一部のソフトウェア開発者にも認められ、比較的人気のある Web アプリケーション サーバーとなっています。

Tomcat の展開

Tomcatをダウンロード
tomcat ホームページを開き、ダウンロードするバージョンを選択します。ここでは tomcat8.5 をダウンロードしました。

ここに画像の説明を挿入

コンピュータのシステム タイプに応じて、64 ビットまたは 32 ビットの圧縮パッケージを選択し、解凍します。

ここに画像の説明を挿入

減圧後

ここに画像の説明を挿入

IDEAを開き、上部のRunをクリックし、 Edit Donfiguration...を選択し、 Templatesをクリックして、Tomcatサーバーを見つけて[ローカル]をクリックします。

ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

4. Configure...をクリックし、解凍したファイルを選択します。名前はapache-tomcat-8.5.61です。

ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

ここに画像の説明を挿入

Web プロジェクトの作成

csd

まず空のJavaプロジェクトを作成し、ここでスクリーンショットを撮ります

ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

プロジェクトを右クリックしてAdd Framework Supportをクリックし、 web applicationフレームワークを選択して「OK」をクリックします。

ここに画像の説明を挿入
ここに画像の説明を挿入

これにより、プロジェクトにWebディレクトリが追加されます

ここに画像の説明を挿入

tomcatの設定

ここに画像の説明を挿入
ここに画像の説明を挿入

ここに画像の説明を挿入

ここでエラーが自動的に処理されない場合は、Web アプリケーションを構成する前の手順を実行していないことを意味します。

習慣)WEB-INFの下にclassesとlibの2つのフォルダを作成します。
クラスディレクトリ: バイトコードファイルを配置する
libディレクトリ: プロジェクトが依存するjarパッケージを禁止する

ここに画像の説明を挿入

プロジェクトアーキテクチャの構成

ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

OKをクリック

(習慣) アプリケーション コンテキスト/変更します (ここでは仮想ディレクトリを設定します。 / の場合、Web サイトにアクセスするときに仮想ディレクトリは必要ありません。 localhost:8080 を直接入力して index.jsp にアクセスできます)

ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

接続に成功しました

ここに画像の説明を挿入

index.jsp ファイルが自動的に開かれます。

ここに画像の説明を挿入

index.jsp はデフォルトのホームページなので、仮想ディレクトリを書く必要はありません。他の .html ファイルにアクセスする場合は、localhost:8080 の後にファイル名を記述する必要があります (例: localhost:8080/hello.html)

src の下に .java ファイルを作成し、サーブレット インターフェイスとその 5 つのメソッドを実装し、後で使用する出力コードをサービス メソッドの下に記述できます。

ここに画像の説明を挿入

サーブレットの設定

方法1: web.xmlに次のコードを貼り付けます

 <!--サーブレットを構成する-->
 <サーブレット>
 <サーブレット名>demo1</サーブレット名>
 <サーブレットクラス>cn.utkvrjan.web.servlet.ServletDemo1</サーブレットクラス>
 </サーブレット>

 <サーブレットマッピング>
 <サーブレット名>demo1</サーブレット名>
 <url-pattern>/デモ</url-pattern>
 </サーブレットマッピング>

写真の位置に貼り付けます

ここに画像の説明を挿入

方法 2: Servlet 3.0 以降では、アノテーション構成がサポートされています。非常に簡単です。実装クラス名に@WebServlet(urlPatterns = "/demo1")または@WebServlet("/demo1")と記述するだけで構成できます。

ここに画像の説明を挿入

次に、Tomcat を起動し、ブラウザに localhost:8080/demo1 と入力してアクセスします (注: ここでの demo1 は、サーブレットを構成するときに入力したものです)。サーブレット実装クラスの service メソッドの下に記述した内容が IDEA コンソールに出力され、サーブレットが正しく構成されていることが示されます。

ここに画像の説明を挿入
ここに画像の説明を挿入

(習慣)ホット デプロイメント: Tomcat を次のように変更します。ファイル内のリソースを更新するときに、Tomcat を再起動 (プロジェクトを再デプロイ) します。これにより、ファイルを変更した後にサーバーを手動で再起動する必要がなくなり、より便利になります。

ここに画像の説明を挿入
ここに画像の説明を挿入

ここで「リソースとクラスの更新」を選択した場合、Java コードを変更するときにも再デプロイが必要になります。Java コードには多くの変更があるため、パフォーマンスに影響する可能性があるため、選択しないでください。

IDEA 2020.3.1 に Tomcat をデプロイし、最初の Web プロジェクトを作成する方法についての記事はこれで終わりです。 IDEA 2020.3 に Tomcat をデプロイし、最初の Web プロジェクトを作成する方法についての詳細は、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。 今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Linux で単一の Tomcat の複数のインスタンスを展開するためのシェル スクリプトの詳細な説明
  • 単一マシン上での Tomcat の複数インスタンスの実装
  • Tomcat を使用して IntelliJ IDEA によってデプロイされたプロジェクトの場所はどこですか?
  • Tomcat マルチインスタンスの展開と構成の原則

<<:  MySQLバックアップとリカバリの実践に関する詳細な説明

>>:  W3C チュートリアル (3): W3C HTML アクティビティ

推薦する

CentOS7 に ElasticSearch 6.4.1 をインストールするための詳細なチュートリアル

1. ElasticSearch 6.4.1 インストール パッケージを次の場所からダウンロードしま...

React プロジェクトで eslint の Baidu スタイルを使用する詳細な説明

1. Baidu Eslint Ruleプラグインをインストールする npm i -D eslint...

CSS で中空効果を実装するサンプルコード

効果原理主にCSSグラデーションを使用して、切り取りを必要としない背景のくり抜きを実現します。クーポ...

さまざまなネットワーク画像形式におけるPNGの利点の詳細な説明

BMP は、ハードウェア デバイスに依存せず、広く使用されている画像ファイル形式です。ビットマップ保...

MySQLは間違ったパスワードを入力する試行回数を制御します

1. 本番環境でMySQLのデッドロックを監視し、デッドロックの可能性を減らす方法まず、デッドロック...

MySQL カーディナリティ統計の簡単な分析

1. カーディナリティとは何ですか?カーディナリティとは、MySQL テーブルの列内の異なる値の数を...

MySQLで判定文を書く方法のまとめ

MySQL で判断文を書く方法:方法1. CASE関数case関数の構文: CASE条件 値1の場合...

小規模プログラムへのデータキャッシュ機構の応用と実装

ミニプログラムデータキャッシュ関連知識データ キャッシュ: データをキャッシュして、アプレットを終了...

JavaScriptコールバック関数の詳細な理解

目次序文クイックレビュー: JavaScript 関数関数とは何ですか?関数を宣言する関数の呼び出し...

Linux でファイル権限を変更する chmod コマンドの詳細な分析

Linux chmodコマンドを使用して、ターゲット ファイルにアクセス、読み取り、書き込み、または...

Vue でコミュニケーションを実装する 8 つの方法

目次1. コンポーネント通信1. Props 親コンポーネント ---> 子コンポーネント通信...

なぜCSSをヘッドタグに配置する必要があるのか

考えてみてください。なぜcss 、 javascriptのようにbodyタグの末尾ではなく、 hea...

MySQLクエリ条件におけるonとwhereの配置の違いの分析

導入今日SQLを書いているときに、問題が発生しました。要件は、データを照会し、スコアと過去 1 週間...

CSS でのフィルタープロパティの使用に関する詳細な説明

フィルター属性は要素の視覚効果を定義しますぼかし画像にガウスぼかしを適用します。 「半径」の値は、ガ...

MySQL の複合インデックスはどのように機能しますか?

目次背景複合インデックスを理解する左端一致原則フィールド順序の影響複合インデックスは単一のインデック...