首页 > 其他 > 详细

Servlet之编码过滤

时间:2016-03-11 10:18:18      阅读:175      评论:0      收藏:0      [点我收藏+]

创建CharactorFilter类,实现javax.servlet.Filter接口:

package com.caiduping;

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 CharactorFilter implements Filter {
	//字符编码
	String encoding=null;
	@Override
	public void destroy() {
		// TODO Auto-generated method stub
		encoding=null;
	}

	@Override
	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {
		// TODO Auto-generated method stub
			//设置request的编码格式
			request.setCharacterEncoding("UTF-8");
			//设置response的字符编码
			//response.setContentType(encoding);
			response.setContentType("text/html;charset=UTF-8");
		chain.doFilter(request, response);
	}

	@Override
	public void init(FilterConfig filterConfig) throws ServletException {
		// TODO Auto-generated method stub
		encoding=filterConfig.getInitParameter("encoding");
	}

}

然后对web.xml进行配置:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
  <display-name></display-name>	
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <filter>
  <filter-name>CharactorFilter</filter-name>
  <filter-class>com.caiduping.CharactorFilter</filter-class>
  <init-param>
  <param-name>CharactorFilter</param-name>
	<param-value>UTF-8</param-value>
  </init-param>
  </filter>
  <filter-mapping>
  <filter-name>CharactorFilter</filter-name>
  <url-pattern>/*</url-pattern>
  </filter-mapping>
  
  <servlet>
  <servlet-name>AddServlet</servlet-name>
  <servlet-class>com.caiduping.AddServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>AddServlet</servlet-name>
  <url-pattern>/AddServlet</url-pattern>
  </servlet-mapping>
</web-app>

创建AddServlet类继承HttpServlet:

package com.caiduping;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class AddServlet extends HttpServlet {
	//serialVersionUID 用来表明类的不同版本间的兼容性
	private static final long serialVersionUID = 1L;

	@Override
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		//处理GET请求
		doPost(request, response);
	}

	@Override
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		//当一个Servlet响应的时候将响应信息通过out对象输出到网页上,当响应结束时它自动被关闭
		PrintWriter out=response.getWriter();
		String name=request.getParameter("name");
		String sex=request.getParameter("sex");
		String age=request.getParameter("age");
		String fav=request.getParameter("fav");
		out.print("信息验证<br>");
		out.print("姓名:"+name+"<br>");
		out.print("性别:"+sex+"<br>");
		out.print("年龄:"+age+"<br>");
		out.print("爱好: "+fav+"<br>");
		out.flush();
		out.close();
	}
		
}

  

 

Servlet之编码过滤

原文:http://www.cnblogs.com/caidupingblogs/p/5264247.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!