ホームページ >Java >&#&チュートリアル >Java のサーブレットの簡単な紹介

Java のサーブレットの簡単な紹介

黄舟
黄舟オリジナル
2017-07-21 16:18:362033ブラウズ

サーブレットはサーバーサイドプログラミング言語であり、J2EE の主要コンポーネントです。この記事では、サーブレットの基礎知識を簡単に紹介しますので、興味のある方はぜひ一緒にご覧ください

サーブレットは、サーバーサイドのプログラミング言語であり、J2EE の重要なコンポーネントです (実際、私は初めて知りました)。 J2EE の 13 の標準 (EJB、サーブレット、JSP の 3 つ) を学習した後、それに触れるまた、サーブレットの原理に基づいて、JSP テクノロジも現在広く使用されており、MVC パターンを実装するための効果的な選択肢となっています。

サーブレットの概要

前に学んだ JavaBeans と同様、サーブレットを作成するには基本的に Java の基本構文に従う必要がありますが、一般的な Java クラスとは異なり、サーブレットは Java でのみ実行できます。クラスは特別な仕様に従い、動作中に独自のライフサイクルを持つ必要があります。これらの機能はサーブレットに固有です。さらに、サーブレットと HTTP プロトコルは密接に関連しているため、サーブレットを使用することで HTTP プロトコルのほぼすべての側面を処理できることが、サーブレットが開発者に好まれる最大の理由です。

サーブレットの動作原理

簡単なJSP+サーブレットのログイン例

JSPページのコード


<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
 <head> 
 </head> 
 <body> 
  <form action="http://127.0.0.1:8080/JavaWebExercise/loginServlet" method="get"> 
    name:<input type="text" name="username"/> 
    <input type="submit" value ="submit"> 
  </form> 
 </body> 
</html>

ログインサーブレットのコード


package com.bjpowernode.test; 
import java.io.IOException;  
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse;  
public class LoginServlet extends HttpServlet { 
  @Override 
  public void doGet(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
    String username=request.getParameter("username"); 
     
    System.out.println("username="+username); 
     
    response.setContentType("text/html;charset=UTF-8"); 
     
    response.getWriter().println(username+" login success"); 
  } 
  @Override 
  public void doPost(HttpServletRequest req, HttpServletResponse resp) 
      throws ServletException, IOException { 
    doGet(req, resp); 
  } 
}

設定ファイルのコード


<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="2.5"  
  xmlns="http://java.sun.com/xml/ns/javaee"  
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee  
  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 
 <display-name></display-name>  
 <welcome-file-list> 
  <welcome-file>index.jsp</welcome-file> 
 </welcome-file-list> 
 <servlet> 
  <servlet-name>MyServlet</servlet-name> 
  <servlet-class>com.bjpowernode.test.LoginServlet</servlet-class> 
 </servlet> 
 <servlet-mapping> 
  <servlet-name>MyServlet</servlet-name> 
  <url-pattern>/loginServlet</url-pattern> 
 </servlet-mapping> 
</web-app>

プロセスの詳細説明

1. リクエストされた URL は http://127.0.0.1:8080/JavaWebExercise/loginServlet です

2. リクエストが Tomcat に到達すると、サーバーはその URL をインターセプトします。クライアントからのリクエストを取得します (ここでは JavaWebExercise)。

3. プロジェクトを見つけたら、URL に従って対応するサーブレットのアクセス名をインターセプトします。ここでは、loginServlet を示します。

4.loginServlet に従ってサーブレット名を見つけます。ここでは MyServlet です。

5. サーブレット名に従って、対応するクラス ファイルを見つけます。これは、com.bjpowernode.test パッケージ内の LoginServlet クラスです。

6. リフレクションを使用して、見つかったサーブレット クラスをインスタンス化します。

7. リクエストの種類に応じて、配布するサーブレットの親クラスのサービスメソッドを呼び出します (ここでは get メソッドと呼びます)。

9. 渡されたパラメータ値を取得します。

10. 他の JavaBeans を呼び出してビジネス ロジックを完成させます。

11. ビジネス ロジックを完成させ、サーブレットに返します。

12. HTML 文字列を出力します

13. HTML を Tomcat サーバーに返します

14. 取得した HTML を介してページをレンダリングします。

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

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