📄 encodingfilter.java
字号:
package com.j1132.filter;
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;
public class EncodingFilter implements Filter {
private String encode = "GBK";
/**
* 服务器停止的时候会被调用,只会执行一次
*/
public void destroy() {
// this.getClass().getName()获得当前对象所属的类的完整的类名
System.out.println(this.getClass().getName() + "destroy方法被调用");
}
/**
* 根据在web.xml文件里的URL匹配模式,调用这个方法
*/
public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
System.out.println(this.getClass().getName() + "的doFilter方法被调用");
// 设置请求数据的编码格式
arg0.setCharacterEncoding(encode);
// 转到下一个过滤器
arg2.doFilter(arg0, arg1);
}
/**
* 服务器启动的时候会被调用,只会调用一次
*/
public void init(FilterConfig arg0) throws ServletException {
System.out.println(this.getClass().getName() + "的init方法被调用");
// 读取web.xml文件里设定的编码参数对应的值
String xmlEncoding = arg0.getInitParameter("encoding");
encode = xmlEncoding;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -