首先,大家先看下效果吧,先知道我要做什么?我项目中有一个jsp页面中,jsp页面中有个form表单,这个表单主要是用来收集数据的,然后提交到服务器端上的一个servlet类处理,表单的文本框中会输入中文,所以为了处理中文乱码的问题,我专门写了一个处理中文乱码的过滤器,在中文乱码过滤器类中设置了编码格式是utf-8,web.xml文件中配置了这个中文乱码过滤器!web.xml文件中还配置了request器对象和request的Attribute属性的器对象。大家都知道,过滤器类中有一个init方法,在web容器启动的时候,比如tomcat启动的时候,过滤器类中的init方法就会执行,而request器对象也有一个方法,叫requestInitialized方法,但是requestInitialized方法不会在tomcat启动的时候执行,而是会在request对象创建的时候执行requestInitialized方法。jsp注释中文乱码
代码如下:
RequestListener类
package com.jiongmeng.listener; import java.util.Enumeration; import javax.servlet.ServletRequest; import javax.servlet.ServletRequestEvent; import javax.servlet.ServletRequestListener; /** * @Description: (request对象在创建和消亡的器) * @author 囧囧 E-mail:666888999@qq.com * jerry * @date: 2017年11月8日 下午1:06:49 * <p>Copyright: Copyright (c) 2005-2017版权归囧萌软件科技公司所有</p> * @version 创建时间:2017年11月8日 下午1:06:49 */ public class RequestListener implements ServletRequestListener{ @Override public void requestDestroyed(ServletRequestEvent requestEvent) { System.out.println("************request对象消亡************"); } @Override public void requestInitialized(ServletRequestEvent requestEvent) { System.out.println("************request对象创建************"); // ServletRequest request = requestEvent.getServletRequest(); // String hobby = request.getParameter("hobby"); // System.out.println("页面传递的参数hobby(爱好) = " + hobby); // Enumeration<String> parameterNames = request.getParameterNames(); // while (parameterNames.hasMoreElements()) { // String parameterName = parameterNames.nextElement(); // System.out.println("参数名 = " + parameterName + " 参数值 = " + request.getParameter(parameterName)); // } } }
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-73622-1.html
你一直都很棒
中国人抵制苹果手机
谁信啊