Web付録

フィルタの作成(通常クラスから作成)

注意

・「スッキリわかるサーブレット&JSP入門 5版」のWeb付録です。4版はこちらを参照してください

step
1
クラスの作成

動的Webプロジェクトを選択して右クリック→「新規」→「クラス」を選択します。

フィルターが所属するパッケージとクラス名を指定し、「完了」を押します

11章のフィルターの作成を行う場合は、パッケージは「filter」、クラス名を「SetEncodingFilter」にしてください。

step
2
ソースコードの編集

作成したクラスに、次の変更を加えます。

① クラスに @WebFilter アノテーションを付与します。
※  jakarta.servlet.annotation.WebFilter をインポートする必要があります。

② @WebFilter アノテーションにフィルタを設定するリクエストのURLパターンを指定します。

11章のフィルターの作成を行う場合は、パターンを「/*」にしてください。

③ HttpFilterクラスを継承、Filterインタフェースを実装します。
※ jakarta.servlet.http.HttpFilterとjakarta.servlet.Filter をインポートする必要があります。

④ doFilterメソッドを実装します。

public void doFilter(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException {
    chain.doFilter(request, response);
}

※ 以下をインポートする必要があります。
・jakarta.servlet.FilterChain
・jakarta.servlet.http.HttpServletRequest
・jakarta.servlet.http.HttpServletResponse
・java.io.IOException

⑤ doFilter()メソッド内の「chain.doFilter(request, response)」より上に前処理、下に後処理を記述します。

11章のフィルタを作成する場合は、前処理を記述します。

もし、このフィルターを設定するURLパターンを後から変更したい場合は、@WebFilterアノテーションの値を変更します。

-Web付録