π· νν°
β μλΈλ¦Ώ νν°
π‘Clientλ‘ λΆν° Serverλ‘ μμ²μ΄ λ€μ΄μ€κΈ° μ μ μλΈλ¦Ώμ κ±°μ³μ νν°λ§ νλ κ²
- 곡ν΅μ μΈ κΈ°λ₯λ€μ μλΈλ¦Ώμ΄ νΈμΆλκΈ° μ μ ν΄μ(μ μ²λ¦¬) λκ² νκ³ μΆκ±°λ,
μλΈλ¦Ώμ΄ νΈμΆλκ³ λ λ€μ μν(νμ²λ¦¬) νκ³ μΆμΌλ©΄ 곡ν΅μ μΈ κΈ°λ₯λ€μ μνλ¦Ώ νν°λ‘ ꡬννλ©΄ λλ€
- Filter μΈν°νμ΄μ€ : νν°λ₯Ό μ€μ νλ FilterConfig κ°μ²΄, FilterChain κ°μ²΄μ Filter κ°μ²΄κ° νμνλ€.
=> Filter μΈν°νμ΄μ€λ init(), doFilter() , destroy() λ©μλκ° μλ€.
- init(FilterConfig config) : μλΈλ¦Ώ 컨ν
μ΄λκ° νν° μΈμ€ν΄μ€λ₯Ό μ΄κΈ°ν νκΈ° μν΄μ νΈμΆνλ λ©μλ
- doFilter(ServletRequest res, ServletResponse res,FilterChain chain) : νν°μμ ꡬνν΄μΌ νλ λ‘μ§μ μμ±νλ λ©μλ
- destroy() : void : νν° μΈμ€ν΄μ€λ₯Ό μ’
λ£μν€κΈ° μ μ νΈμΆνλ λ©μλ
π νν° ν΄λμ€ μμ±
- μ½λ ```java package newlecture.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; import javax.servlet.annotation.WebFilter;
// β/β : λͺ¨λ URLμ νν°λ₯Ό μ μ© @WebFilter(β/β) public class CharacterEncodingFilter implements Filter {
@Override
public void doFilter(ServletRequest req, ServletResponse rep, FilterChain chain)
throws IOException, ServletException {
// μμ²μ μ€ν λλ νν°
//System.out.println("before filter");
// μ€νμ λͺ¨λ μλΈλ¦Ώμ μΈμ½λ© νν°κ° μ μ©
req.setCharacterEncoding("UTF-8");
// μ€νλλ©΄ λ€μ μλΈλ¦Ώμ΄λ νν°κ° μ€νλλ€ => λ€μμ€νμ κ΄ννκΈ° μνκ²
chain.doFilter(req, rep);
// νν° μ€νλ μ΄νμ μ€ν
//System.out.println("after filter");
}
} ```