String[] value = map.get(key);
//当前for循环结束之后,value中的数据全部处理完成
for(int i = 0 ;i< value.length ;i++){
try {
String temp = new String(value[i].getBytes("iso-8859-1"),"utf-8");
//再存入原来的位置
value[i] = temp;
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
//这里还在继续循环,所以不能return结束
}
}
}
//循环结束,标记设置为true
flag = true;
return map;
}else{
returnsuper.getParameterMap();
}
}
@Override
public String[] getParameterValues(String name) {
//先获取所有的数据,map
Map<String, String[]> map = this.getParameterMap();
if(map == null){
returnsuper.getParameterValues(name);
}
//获取map集合中指定数据,根据name指定,相当于key
String[] values = map.get(name);
return values;
}
@Override
public String getParameter(String name) {
//获取指定请求参数的数组
String[] values = this.getParameterValues(name);
if(values == null){
returnsuper.getParameter(name);
}
//如果有数据,返回,数组中的第一个数据
return values[0];
}
}
注意:最后还有去掉原来设置编码的代码。
生活中的例子:
银行的自动门,班导
器:事件源,根据事件源上发生事件,做出相应的处理。

事件源:发生事件的源头,器需要的对象。
事件:事件源上发生的动作,器的内容。
器:负责事件源的对象。

JavaWEB中的器主要JavaWEB中的request、session、ServletContext对象的各种变化。
主要的任务:
ServletRequestListener定义(API截图):


代码演示:
package cn.itcast.listener;
import javax.servlet.ServletRequestEvent;
import javax.servlet.ServletRequestListener;
publicclassMyServletRequestListenerimplements ServletRequestListener{
@Override
//request对象销毁的方法
publicvoid requestDestroyed(ServletRequestEvent sre) {
System.out.println("MyServletRequestListener.....requestDestroyed....");
}
@Override
//request对象初始化的方法
publicvoid requestInitialized(ServletRequestEvent sre) {
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shouji/article-47577-10.html
准备打仗