jsp字符编码过滤器的实现
2017-09-30 20:24
281 查看
1.新建一个Dynamic Web Project项目,里面新建1个filter文件和1个jsp文件,整体的框架如图所示:
2.SetCharacterEncodingFilter.java里面的代码如下所示:
package 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;
import javax.servlet.annotation.WebFilter;
import javax.servlet.annotation.WebInitParam;
@WebFilter(filterName = "setCharacterEncodingFilter", urlPatterns = { "/*" }, initParams = { @WebInitParam(name = "encoding", value = "utf-8") })
public class SetCharacterEncodingFilter implements Filter {
public static String encoding;
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(encoding);
chain.doFilter(request, response);
}
@Override
public void init(FilterConfig fConfig) throws ServletException {
encoding = fConfig.getInitParameter("encoding");
}
}
3.one.jsp里面的代码如下所示:
<%@page import="java.util.Date"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>example</title>
</head>
<body>
<h2>Test</h2>
</body>
</html>
4.在浏览器里面输入http://localhost:8080/Servlet/one.jsp运行之后得到的结果如下所示:
2.SetCharacterEncodingFilter.java里面的代码如下所示:
package 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;
import javax.servlet.annotation.WebFilter;
import javax.servlet.annotation.WebInitParam;
@WebFilter(filterName = "setCharacterEncodingFilter", urlPatterns = { "/*" }, initParams = { @WebInitParam(name = "encoding", value = "utf-8") })
public class SetCharacterEncodingFilter implements Filter {
public static String encoding;
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(encoding);
chain.doFilter(request, response);
}
@Override
public void init(FilterConfig fConfig) throws ServletException {
encoding = fConfig.getInitParameter("encoding");
}
}
3.one.jsp里面的代码如下所示:
<%@page import="java.util.Date"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>example</title>
</head>
<body>
<h2>Test</h2>
</body>
</html>
4.在浏览器里面输入http://localhost:8080/Servlet/one.jsp运行之后得到的结果如下所示:
相关文章推荐
- JSP脏话过滤器的实现
- JSP使用过滤器防止SQL注入的简单实现
- JSP使用过滤器防止SQL注入的简单实现
- JSP过滤器防止Xss漏洞的实现方法(分享)
- JSP 开发中过滤器filter设置编码格式的实现方法
- 使用jsp过滤器实现登录权限
- 字符编码过滤器的实现
- JSP过滤器(Filter)之实现全站数据压缩
- J2EE的压缩输出流的过滤器实现(来自于Head first Servlets and jsp)
- servlet+jsp实现过滤器,防止用户未登录访问
- 用Servlet、JSP实现帐号注册页面,用过滤器过滤对象防止中文乱码
- JSP页面实现servlet过滤器与servlet监听器(JSP中级技术)
- servlet+jsp实现过滤器 防止用户未登录访问
- jsp实现登录验证的过滤器
- jsp实现网站浏览过滤器(没有登录就不能访问其他网页)
- JSP过滤器(Filter)之实现全站解决中文提交乱码(包括get提交方式)
- 实现Struts2中对未登录的jsp页面进行拦截功能(采用的是Struts2中过滤器进行过滤拦截)
- JSP脏话过滤器的实现
- asp.net中实现jsp的过滤器
- 过滤器实现对未登录用户访问JSP页面,进行控制。