티스토리 뷰

javax.servlet.filter 인터페이스 구현

요청 URL에 따른 HTTP 요청과 응답을 변경할 수 있는 재사용 web.xml 혹은 어노테이션으로  url 설정가능
필터 생명주기 및 주요 메서드

init( ) : 최초 1회 실행 메서드
doFilter() : 필터 실힝시 매번 실행되는 메서드
destory() : 필터 제거시 1회 실행 메서드
http://localhost/member/memberList 요청시 필터 설정에 따른 실행순서

 

 

 

 

<- 이미 만들어진 것을 상속받아서

정해진 이벤트에 관련된 메서드로 작업. 

 

 

 

 

 

 

https://dololak.tistory.com/614

 

[서블릿/JSP] HttpSessionListener 리스너로 세션 생성 및 종료시 이벤트 처리하기

이전글 [서블릿/JSP] 리스너(Listner)란? 이벤트 리스너의 개념 설명. 구현 및 등록하기 [서블릿/JSP] 세션(Session)이란? 세션 생성하는 방법 및 세션 객체 설명 HttpSessionListener 리스너 JSP/Servlet 환경에..

dololak.tistory.com


 

1. 필터 생성

 

 

2.

 

 

3. 

 

4. CommonFilter.java

package kr.or.ksmart;

import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;


@WebFilter({ "/CommonFilter", "*.do" })
public class CommonFilter implements Filter {


    public CommonFilter() {

    }
    //필터 객체가 제거될시 실행
	public void destroy() {

	}

	//연동된 url 규칙에 맞는 호출이 왔을 경우 실행
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		
		//다음 서블릿 및 필터 실행을 위해서는 이 메서드 실행이 있어야 한다.
		//다음 실행 위임
		System.out.println("filter실행 확인");
		chain.doFilter(request, response);
	}

	//필터 객체화 될 때 1회 실행
	public void init(FilterConfig fConfig) throws ServletException {

	}

}

 

5. MainController.java

package kr.or.ksmart;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


@WebServlet("*.do")
public class MainController extends HttpServlet {
	private static final long serialVersionUID = 1L;

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		response.getWriter().append("Served at: ").append(request.getContextPath());
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

 

6. index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE>
<html>
<head>
<meta charset="UTF-8">
<title>인덱스 실행</title>
</head>
<body>

</body>
</html>

 

 

7. 콘솔확인

 

8. ServeCommonFilter.java

package kr.or.ksmart;

import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;

@WebFilter({ "/SubCommonFilter", "/member/*" })
public class ServeCommonFilter implements Filter {


    public ServeCommonFilter() {

    }


	public void destroy() {

	}

	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		System.out.println("subCommonFilter");
		chain.doFilter(request, response);
	}


	public void init(FilterConfig fConfig) throws ServletException {
		// TODO Auto-generated method stub
	}

}

 

 

9.

'41기 개발자과정' 카테고리의 다른 글

20220117 제네릭  (0) 2022.01.17
20220117 싱글톤 패턴  (0) 2022.01.17
20220111 el표기법, JSTL  (0) 2022.01.11
20220111 EL  (0) 2022.01.11
20220111 RESTful  (0) 2022.01.11
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함