1.4 サーブレットのライフサイクルの目的とイベントシーケンスを説明する
2020年2月15日 (土) 07:29時点におけるPiroto (トーク | 投稿記録)による版 (ページの作成:「====サーブレット==== =====ライフサイクル===== File:0082_servlet_lyfecycle.jpg =====クラス図===== File:0081_servlet.jpg ====サーブレッ…」)
目次
サーブレット
ライフサイクル
クラス図
サーブレットクラスのロードとインスタンス化
サーブレットロードの順序
- サーブレットコンテナは、起動時に配備記述子(web.xml)を探す
- 配備記述子(web.xml)のサーブレットエントリには、サーブレット名とJavaクラス名が併記されている
- サーブレットコンテナはClass.forName(className).newInstance()を使用してサーブレットのインスタンスを生成する
- サーブレットはこの時点でロード状態となる
- サーブレットクラスにデフォルトコンストラクタが必要
initメソッドの呼び出し
サーブレットは、init(ServletConfig) メソッド内で、初期化処理を行う。
- サーブレットは、サーブレットコンテナによりデフォルトコンストラクタを利用して、インスタンス化される
- サーブレットを初期化したい状況において、コンストラクタは利用できない(デフォルトコンストラクタが使用される)
- サーブレットコンテナは、サーブレットをロード後、サーブレットの初期化のためにServlet.init(ServletConfig)メソッドを呼び出す
- ServletConfigオブジェクトには、配備記述子(Web.xml)で指定された初期化パラメータが含まれる
serviceメソッドの呼び出し
サーブレットのインスタンス初期化が完了後、サーブレットコンテナは、サーブレットあてのリクエストを、
Servlet.service(ServletRequest, ServletResponse)
へディスパッチする
destroyメソッドの呼び出し
- サーブレットコンテナは、サーブレットが不要になったと判断したら、インスタンスのServlet.destroy() メソッドを呼び出す
- この状態になると、あとはアンロード状態にしか遷移できない
1.3 HttpServletレスポンスのインタフェースを使用して、以下のコードを書き出す 2.1 Webアプリケーションのファイルとディレクトリ構造を構築する
SCWCD Exam Study Kit: Java Web Component Developer Certification (ペーパーバック)
© 2006 矢木浩人

