を作成するには 6 つのステップがあります。 サーブレットの例 。これらの手順はすべてのサーバーで必要です。
サーブレットのサンプルは、次の 3 つの方法で作成できます。
- サーブレットインターフェースを実装することで、
- GenericServletクラスを継承することで、(または)
- HttpServletクラスを継承することで
最もよく使用されるアプローチは、doGet()、doPost()、doHead() などの http リクエスト固有のメソッドを提供するため、HttpServlet を拡張することです。
ここで使用するのは、 Apache Tomcatサーバー この例では。手順は次のとおりです。
- ディレクトリ構造を作成する
- サーブレットを作成する
- サーブレットをコンパイルする
- デプロイメント記述子の作成
- サーバーを起動してプロジェクトをデプロイする
- サーブレットにアクセスする
このサーブレットの例をダウンロードします
GenericServlet を拡張したサーブレットのダウンロード例
サーブレットインターフェース実装によるサーブレットのダウンロード例
1)ディレクトリ構造を作成する
の ディレクトリ構造 Web コンテナが情報を取得してクライアントに応答できるように、さまざまな種類のファイルをどこに配置するかを定義します。
Sun Microsystem は、すべてのサーバー ベンダーが従う独自の標準を定義しています。サーブレットを作成するために従う必要があるディレクトリ構造を見てみましょう。
ご覧のとおり、サーブレット クラス ファイルはクラス フォルダーに存在する必要があります。 web.xml ファイルは WEB-INF フォルダーの下にある必要があります。
2)サーブレットの作成
サーブレットを作成するには 3 つの方法があります。
|
この例では、HttpServlet クラスを拡張するサーブレットを作成します。この例では、HttpServlet クラスを継承し、doGet() メソッドの実装を提供しています。 get リクエストがデフォルトのリクエストであることに注意してください。 |
デモサーブレット.java
import javax.servlet.http.*; import javax.servlet.*; import java.io.*; public class DemoServlet extends HttpServlet{ public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServletException,IOException { res.setContentType('text/html');//setting the content type PrintWriter pw=res.getWriter();//get the stream to write the data //writing html in the stream pw.println(''); pw.println('Welcome to servlet'); pw.println(''); pw.close();//closing the stream }}
3)サーブレットをコンパイルする
サーブレットをコンパイルするには、jar ファイルをロードする必要があります。サーバーが異なれば、提供される jar ファイルも異なります。
Jarファイル | サーバ |
---|---|
1) サーブレット-api.jar | Apache Tomcat |
2) weblogic.jar | ウェブロジック |
3) javaee.jar | シラスフィッシュ |
4) javaee.jar | ジェイボス |
jar ファイルをロードする 2 つの方法
- クラスパスを設定する
- jar ファイルを JRE/lib/ext フォルダーに貼り付けます
Javaファイルを任意のフォルダに置きます。 Javaファイルをコンパイルしたら、サーブレットのクラスファイルを貼り付けます。 WEB-INF/クラス ディレクトリ。
4)デプロイメント記述子(web.xmlファイル)の作成
の デプロイメント記述子 は XML ファイルであり、Web コンテナはこのファイルから、呼び出されるサーベットに関する情報を取得します。
Web コンテナはパーサーを使用して web.xml ファイルから情報を取得します。 SAX、DOM、Pull などの XML パーサーが多数あります。
web.xml ファイルには多くの要素があります。ここでは、単純なサーブレット プログラムを実行するために必要な要素をいくつか示します。
web.xml ファイル
sonoojaiswal DemoServlet sonoojaiswal /welcome
web.xml ファイルの要素の説明
web.xml ファイル内の要素が多すぎます。上記の web.xml ファイルで使用されるいくつかの要素の図を次に示します。要素は次のとおりです。
アプリケーション全体を表します。 |
はサーブレットのサブ要素であり、サーブレットを表します。 |
のサブ要素はサーブレットの名前を表します。 |
はサーブレットのクラスを表すサブ要素です。 |
は のサブ要素です。サーブレットをマッピングするために使用されます。 |
は のサブ要素です。このパターンは、クライアント側でサーブレットを呼び出すために使用されます。 |
5)サーバーを起動し、プロジェクトをデプロイします
Apache Tomcat サーバーを起動するには、apache-tomcat/bin ディレクトリの下にあるstartup.bat ファイルをダブルクリックします。
Apache Tomcat サーバーのワンタイム構成
次の 2 つのタスクを実行する必要があります。
- 環境変数にJAVA_HOMEまたはJRE_HOMEを設定します(サーバーを起動するために必要です)。
- Tomcatのポート番号を変更します(オプション)。別のサーバーが同じポート (8080) で実行されている場合に必要です。
1) 環境変数に JAVA_HOME を設定するにはどうすればよいですか?
Apache Tomcat サーバーを起動するには、環境変数に JAVA_HOME と JRE_HOME を設定する必要があります。
「マイコンピュータ」のプロパティに移動します -> 詳細タブをクリックし、環境変数をクリックします -> ユーザー変数の新しいタブをクリックします -> 変数名に JAVA_HOME を書き込み、変数値に jdk フォルダのパスを貼り付けます -> OK -> OK -> OK 。
セッションの有効期限が切れています
「マイ コンピュータ」のプロパティに移動します。
[詳細なシステム設定] タブをクリックし、次に環境変数をクリックします。
np.どこ
ユーザー変数またはシステム変数の新しいタブをクリックします。
変数名に JAVA_HOME を記述し、変数値に jdk フォルダーのパスを貼り付けます。
パスの末尾にセミコロン (;) を含めることはできません。
JAVA_HOMEを設定した後、Apache tomcat/binのstartup.batファイルをダブルクリックします。 |
注: 利用可能な Tomcat には 2 つのタイプがあります。
|
解凍するだけで済むApache Tomcatの例です。 |
これでサーバーは正常に起動されました。
2) Apache Tomcatのポート番号を変更する方法
同じシステム上で同じポート番号で実行されている別のサーバーがある場合は、ポート番号の変更が必要です。oracle をインストールしていると仮定すると、両方のデフォルトのポート番号が 8080 であるため、Apache Tomcat のポート番号を変更する必要があります。
開ける server.xml ファイル メモ帳で。の中にあります。 apache-tomcat/conf ディレクトリ 。コネクタ ポート = 8080 を変更し、8080 を 8080 の代わりに任意の 4 桁の数字に置き換えます。これを 9999 に置き換えて、このファイルを保存します。
5) サーブレットプロジェクトのデプロイ方法
プロジェクトをコピーし、Apache Tomcat の下の webapps フォルダーに貼り付けます。
ただし、プロジェクトをデプロイするにはいくつかの方法があります。それらは次のとおりです。
- context(プロジェクト)フォルダーをwebappsディレクトリにコピーする
- war フォルダーを webapps ディレクトリにコピーする
- サーバーからフォルダーのパスを選択することで
- サーバーから war ファイルを選択することで
ここでは、最初のアプローチを使用します。
war ファイルを作成し、webapps ディレクトリ内に貼り付けることもできます。これを行うには、jar ツールを使用して war ファイルを作成する必要があります。プロジェクト ディレクトリ内 (WEB-INF の前) に移動し、次のように記述します。
projectfolder> jar cvf myproject.war *
war ファイルを作成すると、プロジェクトをある場所から別の場所に移動する時間が短縮されるという利点があります。
6) サーブレットへのアクセス方法
ブラウザを開き、http://hostname:portno/contextroot/urlpatternofservlet と書き込みます。例えば:
http://localhost:9999/demo/welcome
このサーブレットの例をダウンロードします (メモ帳を使用)
GenericServlet を拡張したサーブレットのダウンロード例
サーブレットインターフェース実装によるサーブレットのダウンロード例