πŸ’»

JSP ν”„λ‘œκ·Έλž˜λ° - [MVC/DB연동] ν•„ν„°(Filter) λ³Έλ¬Έ

KITRI/JSP

JSP ν”„λ‘œκ·Έλž˜λ° - [MVC/DB연동] ν•„ν„°(Filter)

λ˜νš¨λ‹ˆ 2020. 7. 13. 09:42

λ™μ μœΌλ‘œ μš”μ²­μ΄λ‚˜ 응닡에 포함 된 정보λ₯Ό λ³€ν™˜ν•˜κ±°λ‚˜ μ‚¬μš©ν•˜κΈ° μœ„ν•΄ μš”μ²­ 및 응닡을 μΈν„°μ…‰νŠΈ ν•  μˆ˜μžˆλŠ” ν•„ν„°λ₯Ό ν¬ν•¨ν•œλ‹€.

ν•œ 가지 μ΄μƒμ˜ ν•„ν„° μ„œλΈ”λ¦Ώ λ˜λŠ” μ„œλΈ”λ¦Ώμ— λΆ€μ°© 될 μˆ˜μžˆλ‹€. ν•„ν„°λŠ” λ˜ν•œ μžλ°” μ„œλ²„ νŽ˜μ΄μ§€ (JSP) 파일 및 HTML νŽ˜μ΄μ§€μ— λΆ€μ°© 될 μˆ˜μžˆλ‹€.

ν•„ν„°λ₯Ό μ‚¬μš©ν•˜λ©΄ λ‹€μŒκ³Ό 같은 λͺ©ν‘œλ₯Ό 달성 ν•  μˆ˜μžˆλŠ”, μžλ°” μ„œλΈ”λ¦Ώ ν”„λ‘œκ·Έλž˜λ° ν΄λž˜μŠ€μ— μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€ :

  • μ•‘μ„ΈμŠ€λ₯Ό μš”μ²­ν•˜λŠ” 것은 μ΄λŸ¬ν•œ μš”μ²­μ„ μΈν„°μ…‰νŠΈ μžμ›, ν΄λΌμ΄μ–ΈνŠΈ λ°±μ—”λ“œν•˜κΈ° 전에.
  • μ„œλ²„λŠ” μ΄λŸ¬ν•œ 응닡을 μ²˜λ¦¬ν•˜λŠ” ν΄λΌμ΄μ–ΈνŠΈμ—κ²Œ 응닡을 μ „μ†‘ν•˜κΈ° 전에.

http://www.w3big.com/ko/jsp/jsp-writing-filters.html

 

JSP ν•„ν„°

JSP ν•„ν„° λͺ¨λ“  μžλ°” ν΄λž˜μŠ€μ— JSP와 μ„œλΈ”λ¦Ώ ν•„ν„°. λ™μ μœΌλ‘œ μš”μ²­μ΄λ‚˜ 응닡에 포함 된 정보λ₯Ό λ³€ν™˜ν•˜κ±°λ‚˜ μ‚¬μš©ν•˜κΈ° μœ„ν•΄ μš”μ²­ 및 응닡을 μΈν„°μ…‰νŠΈ ν•  μˆ˜μžˆλŠ” ν•„ν„°λ₯Ό ν¬ν•¨ν•œλ‹€. ν•œ 가지 μ΄μƒμ˜ ν•„ν„°

www.w3big.com

 

 

 

javax.servlet.Filter μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•˜λŠ” μžλ°” ν΄λž˜μŠ€μ΄λ‹€.

 

public void init(FilterConfig filterConfig)

ν•„ν„° 객체가 생성될 λ•Œ ν˜ΈμΆœλ˜λŠ” λ©”μ†Œλ“œμ΄λ‹€. ν•„μ²˜ κ°μ²΄λŠ” μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ„œλΉ„μŠ€κ°€ μ˜¬λΌκ°€λ©΄μ„œ, 즉 μ›Ήμ„œλ²„κ°€ μ‹œμž‘λ  λ•Œ ν•œλ²ˆλ§Œ λ˜μ–΄ μƒμ„±λ˜μ–΄ ν•œλ²ˆλ§Œ 호좜되며, init( )λ©”μ†Œλ“œμ—λŠ” 주둜 μ΄ˆκΈ°ν™” κΈ°λŠ₯을 κ΅¬ν˜„ν•œλ‹€.

 

public void doFilter (ServletRequest, ServletResponse, FilterChain)

doFilter( ) λ©”μ†Œλ“œλŠ” 필터링 μ„€μ •ν•œ μ„œλΈ”λ¦Ώμ„ μ‹€ν–‰ν•  λ•Œλ§ˆλ‹€ ν˜ΈμΆœλ˜λŠ” λ©”μ†Œλ“œλ‘œμ„œ μ‹€μ œ 필터링 κΈ°λŠ₯을 κ΅¬ν˜„ν•˜λŠ” λ©”μ†Œλ“œ μž…λ‹ˆλ‹€.

 

public void destroy()

ν•„ν„° 객체가 μ‚­μ œ 될 λ•Œ ν˜ΈμΆœλ˜λŠ” λ©”μ†Œλ“œμž…λ‹ˆλ‹€. λ”°λΌμ„œ destory( ) λ©”μ†Œλ“œμ—λŠ” 주둜 μžμ› ν•΄μ œ κΈ°λŠ₯을 κ΅¬ν˜„ν•©λ‹ˆλ‹€.

 


ν•œκΈ€ 섀정을 μœ„ν•΄ javaνŒŒμΌμ— ν•΄λ‹Ή μ½”λ“œλ₯Ό μ‚½μž…ν–ˆμ—ˆλ‹€. 이λ₯Ό ν•„ν„°λ‘œ κ΅¬ν˜„ν•΄λ³΄μž.

request.setCharacterEncoding("utf-8"); 

 

 

ν•„ν„° 등둝

 

web.xml

 <!-- ν•œκΈ€ μ„€μ • -->
  <filter>
  	<filter-name>CharacterFilter</filter-name>
  	<filter-class>com.java.filter.CharacterFilter</filter-class>
  </filter>
  <filter-mapping>
  	<filter-name>CharacterFilter</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>

 

 

ν•„ν„° κ΅¬ν˜„

 

CharacterFilter.java

package com.java.filter;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class CharacterFilter implements Filter{

    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
	    throws IOException, ServletException {
	
	request.setCharacterEncoding("utf-8");
	chain.doFilter(request, response);
	
    }
}
λ°˜μ‘ν˜•
Comments