ホームページ  >  記事  >  Java  >  サーブレットメソッド

サーブレットメソッド

王林
王林オリジナル
2024-08-30 16:23:42811ブラウズ

サーブレット メソッドは、ユーザーの要件に応じて Web アプリケーションを作成、操作、保守するためのサーブレット ライフ サイクルの重要な部分です。サーブレット メソッドは、Web アプリケーションの操作サイクルを作成、初期化、処理し、終了します。サーブレット メソッドは、運用アプリケーションを開発し、Web コンテナを呼び出してサーブレットのライフ サイクルを運用するために使用される重要な機能です。サーブレットは、リクエストを送信し、サーバーから応答を取得し、必要に応じて操作を実行するための複数のメソッドを提供します。

広告 このカテゴリーの人気コース JAVA サーブレット - 専門分野 | 18 コース シリーズ | 6 つの模擬テスト

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

サーブレット メソッドの概要

サーバー側コンポーネントであるサーブレットは、サーバー側アプリを作成するための強力なツールです。サーブレットを使用した Web ベースのアプリケーションの構築は、CGI プログラムのパフォーマンス制限がない、コンポーネント ベースのプラットフォームに依存しないソリューションです。 Web 開発者は、サーブレットを使用してサーバー側アプリケーションを迅速かつ効果的に作成でき、これらのアプリケーションはサーブレットをサポートする任意の Web サーバー上で動作できます。 Java 仮想コンピュータ内では、サーブレットが機能します。サーブレットがサーバー上で実行されている間、ブラウザの互換性はテストされません。

サーブレットは、エンタープライズ データベース アクセス用の JDBC API を含む Java API ファミリにアクセスできます。 javax.servlet および javax.servlet.http パッケージ内のいくつかの Java クラスは、サーブレット HTTP プロトコルを使用します。さらに、サーブレットは HTTP 固有の呼び出しのライブラリにアクセスでき、移植性、パフォーマンス、再利用、クラッシュ保護など、Java 言語の成熟した機能をすべて活用できます。

さまざまなサーブレット メソッド

汎用サーブレットは、運用サーブレットのライフサイクルで次の 5 つのメソッドを使用および操作します。

1.サーブレット init() メソッド

サーブレット コンテナは、サーブレット操作で init() メソッドを 1 回だけ呼び出します。この inits() メソッドは、サービスを開始することをサーブレットに通知します。

次のいずれかの条件を init メソッドで使用する必要があります:;[p ‘mi;/.

  • 条件付きで ServletException がスローされます。
  • Web サーバーは固定の制限時間を指定します。

構文:

public void init(ServletConfig configs) throws ServletException{
//initialize servlet object and parameters.
}

初期化関数と基本的なサーブレット設定を保持する ServletConfig オブジェクトは init() メソッドに渡され、エラーが発生した場合は ServletException がスローされます。

2.サーブレット service() メソッド

サーブレットがリクエストの受信を開始すると、サーブレットコンテナは service() メソッドを呼び出し、反応できるようにします。サーブレット コンテナは、ServletResponse をデータベースと表示ページにも渡します。

javax.servlet.ServletRequest と javax.servlet.ServletResponse という 2 つのオブジェクトは、クライアント要求に対するサーブレットの処理を支援します。

構文:

public void service(ServletRequest requests, ServletResponse responses) throws ServletException{
//Pass servlet object and parameters.
}

3.サーブレット getServletConfig() メソッド

サーブレット コンテナは、ServletConfig() というサーブレット メソッドを作成します。これは、オブジェクトのライフサイクルの初期化中にサーブレットに提供されます。これには、いくつかの初期パラメータまたは構成データが含まれています。サーブレット固有の情報は web.xml に保存することをお勧めします。

構文:

public String getServletConfig(){
// Add servlet code.
}

4.サーブレット getServletInfo() メソッド

サーブレット メソッドは、コンテナからサーブレット情報を表示または返します。この情報は、サーブレット コンテナで操作できます。

構文:

public String getServletInfo(){
// Add servlet code.
}

5.サーブレット destroy() メソッド

サーブレットの破棄メソッドは、サーブレットのライフサイクルと接続を閉じるために使用されます。必要な出力を表示した後、サーブレット機能を終了します。

構文:

public void destroy(){
// End servlet connections.
}

サーブレットメソッドの例

次の例は、サーブレットのさまざまなメソッドと操作ごとの出力を示しています。

例 #1

Hello World サーブレット メソッドの例とその出力。

HelloOutput.java:

コード:

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class HelloOutput implements Servlet {
private static final long serialVersionUID = 1L;
public HelloOutput() {
}
ServletConfig configurates=null;
@Override
public void init(ServletConfig configurates) throws ServletException {
this.configurates = configurates;
System.out.println("Servlet Object initializes here.");
}
@Override
public void destroy() {
System.out.println("Close connection and End process here.");
}
@Override
public ServletConfig getServletConfig() {
return configurates;
}
@Override
public String getServletInfo() {
return "Educba Website";
}
@Override
public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter printout = response.getWriter();
printout.println("<h2>Hello World First Example using " +
"Servlet Methods.</h2>");
printout.close();
}
}

web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4"
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">
<servlet>
<servlet-name> HelloOutput </servlet-name>
<servlet-class>
com.educba.learn.HelloOutput
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> HelloOutput </servlet-name>
<url-pattern> /HelloOutput </url-pattern>
</servlet-mapping>
</web-app>

出力:

サーブレットメソッド

例 #2

getServletInfo() メソッドの出力を含むサーブレット メソッドの例。

HelloOutput.java:

コード:

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class HelloOutput implements Servlet {
private static final long serialVersionUID = 1L;
public HelloOutput() {
}
ServletConfig configurates=null;
@Override
public void init(ServletConfig configurates) throws ServletException {
this.configurates = configurates;
System.out.println("Servlet Object initializes here.");
}
@Override
public void destroy() {
System.out.println("Close connection and End process here.");
}
@Override
public ServletConfig getServletConfig() {
return configurates;
}
@Override
public String getServletInfo() {
return "Educba Website";
}
@Override
public void service(ServletRequest requests, ServletResponse responses)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter printout = response.getWriter();
printout.println("<h2>Hello World First Example using " + getServletInfo() +
".</h2>");
printout.close();
}
}

web.xml:

コード:

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4"
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">
<servlet>
<servlet-name> HelloOutput </servlet-name>
<servlet-class>
com.educba.learn.HelloOutput
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> HelloOutput </servlet-name>
<url-pattern> /HelloOutput </url-pattern>
</servlet-mapping>
</web-app>

出力:

サーブレットメソッド

例 #3

HTML 要素を含むサーブレット メソッドの例とその出力。

HelloOutput.java:

コード:

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class HelloOutput implements Servlet {
private static final long serialVersionUID = 1L;
public HelloOutput() {
}
ServletConfig configurates=null;
@Override
public void init(ServletConfig configurates) throws ServletException {
this.configurates = configurates;
System.out.println("Servlet Object initializes here.");
}
@Override
public void destroy() {
System.out.println("Close connection and End process here.");
}
@Override
public ServletConfig getServletConfig() {
return configurates;
}
@Override
public String getServletInfo() {
return "Educba Website";
}
@Override
public void service(ServletRequest requests, ServletResponse responses)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter printout = response.getWriter();
printout.print("<html><body>");
printout.println("<h5> Simple servlet method example </h5>");
printout.println("<p> Simple servlet method example </p>");
printout.print("</body></html>");
}
}

web.xml:

Code:

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4"
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">
<servlet>
<servlet-name> HelloOutput </servlet-name>
<servlet-class>
com.educba.learn.HelloOutput
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> HelloOutput </servlet-name>
<url-pattern> /HelloOutput </url-pattern>
</servlet-mapping>
</web-app>

Output:

サーブレットメソッド

Conclusion

The servlet method plays an important role in web application functionality. It shows and defines about server and displays the output.

以上がサーブレットメソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。