package com.itheima.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import java.io.UnsupportedEncodingException;
/**
* 对HttpServletRequest的getParameter方法进行增强,这样子不管是GET还是POST得到的都不是乱码
*/
public class MyHttpServletRequest extends HttpServletRequestWrapper {
private final HttpServletRequest req;
public MyHttpServletRequest(HttpServletRequest request) {
super(request);
this.req = request;
}
@Override
public String getParameter(String name) {
// return super.getParameter(name);
String method = req.getMethod();
if ("get".equalsIgnoreCase(method)) {
// get方法
String value = super.getParameter(name);
try {
return new String(value.getBytes("ISO-8859-1"), "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
} else if ("post".equalsIgnoreCase(method)) {
try {
req.setCharacterEncoding("UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
return super.getParameter(name);
}
}
增强HttpServletRequest,修改getParameter方法,让返回的中文不乱码!
最新推荐文章于 2022-04-24 01:12:47 发布