コード (MyFilter.java)
package webApplication31;
import javax.servlet.*;
import java.io.*;
public class MyFilter implements Filter {
/** Creates a new instance of MyFilter */
public MyFilter() {
}
public void init(FilterConfig filterConfig) {
System.out.println("MyFilter Initialized!");
}
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) {
System.out.println("Filtering Execute");
try {
chain.doFilter(request, response);
} catch (Exception e) {
}
}
public void destroy() {
System.out.println("MyFilter Destroyed");
}
}
コード (UseFilterServlet.java)
package webApplication31;
import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class UseFilterServlet extends HttpServlet {
PrintWriter out = null;
/** Handles the HTTP <code>GET</code> method.
* @param request servlet request
* @param response servlet response
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; encoding=ISO-2022-jp");
try {
out = response.getWriter();
out.println("<HTML>");
out.println("<HEAD>");
out.println("<TITLE>Filter Test</TITLE>");
out.println("</HEAD>");
out.println("<BODY>");
out.println("<H1>Filter Test</H1>");
out.println("<BR><HR><BR>");
out.println("<p align=\"center\">");
out.println("<FONT size=\"20\">Output Filtering Logging!</FONT>");
out.println("</P>");
out.println("</BODY>");
out.println("</HTML>");
} catch (Exception e) {
} finally {
try {
out.close();
} catch (Exception e) {
}
}
}
/** Handles the HTTP <code>POST</code> method.
* @param request servlet request
* @param response servlet response
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//processRequest(request, response);
}
/** Returns a short description of the servlet. */
public String getServletInfo() {
return "Short description";
}
}
コード (web.xml)
<?xml version="1.0" encoding="UTF-8"?>
<web-app 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">
<filter>
<filter-name>MyFilter</filter-name>
<filter-class>webApplication31.MyFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>MyFilter</filter-name>
<servlet-name>UseFilterServlet</servlet-name>
</filter-mapping>
<servlet>
<servlet-name>UseFilterServlet</servlet-name>
<servlet-class>webApplication31.UseFilterServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UseFilterServlet</servlet-name>
<url-pattern>/UseFilterServlet</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>30</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
実行結果 (標準出力)
MyFilter Initialized!
Filtering Execute
※Tomcatの終了、Webアプリケーションの停止をすると"MyFilter Destroyed"が表示される。
著者
iPentecのプログラマー、最近はAIの積極的な活用にも取り組み中。
とっても恥ずかしがり。
最終更新日: 2024-01-06
作成日: 2011-02-14