JSP request.getParameter 乱码

<%@pagecontentType="text/html;charset=UTF-8"%><%@includefile="/app/_head.jsp"%><%@pag... <%@ page contentType="text/html;charset=UTF-8"%><%@ include file="/app/_head.jsp"%>
<%@page import="com.pm360.mda.platform.util.StringUtil"%>
<html>
<head>
<title>乱码解决</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<!--值是中文,乱码-->
方法一:
<input id="MODULE_NAME" name="MODULE_NAME" type="text" value="<%=StringUtil.formatDbColumn(request.getParameter("MODULE_NAME"))%>">
<!--页面直接报错-->
方法二:
<% String value = new String(request.getParameter("MODULE_NAME");.getBytes("ISO-8859-1"),"UTF-8"); %>
<input id="MODULE_NAME" name="MODULE_NAME" type="text" value="<%=value %>">

方法三:<%
request.setCharacterEncoding("GBK/GB2312");//用这个直接报错
改为:
request.setCharacterEncoding("UTF-8");//还是乱码
String title = request.getParameter("MODULE_NAME");
%>
<input id="MODULE_NAME" name="MODULE_NAME" type="text" value="<%=title %>">
</body>
</html>

页面的值又只能通过request.getParameter 去取,有哪位高手知道我这种情况怎么取不会乱码,请告知,谢谢
展开
 我来答
liangsy_wangzy
2012-10-24
知道答主
回答量:36
采纳率:0%
帮助的人:13.6万
展开全部
web.xml 增加编码过滤器
<filter>
<filter-name>encoding</filter-name>
<filter-class>
com.skysz.framework.filter.encoding.EncodingFilter
</filter-class>
</filter>

EnCodingFilter 实现类
public class EncodingFilter implements Filter {
private String encoding;
public void init(FilterConfig config) throws ServletException {
this.encoding = config.getInitParameter("encoding");
if (StringUtils.isNullOrBlank(this.encoding)) {
this.encoding = "UTF-8";
}

}
public void doFilter(ServletRequest srequest, ServletResponse sresponse, FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) srequest;
request.setCharacterEncoding(encoding);
chain.doFilter(srequest, sresponse);
}

public void destroy() {
}
}
健康生活小PP
2012-10-24 · TA获得超过930个赞
知道小有建树答主
回答量:1217
采纳率:33%
帮助的人:427万
展开全部
你是通过什么把值传过来的 action还是servlet
action的话在里面添加ServletActionContext.getResponse().setCharacterEncoding("UTF-8");
servlet的话获取HttpResponse对象执行setCharacterEncoding("UTF-8");
追问


">

这个是代码,还是乱码?
追答
同学 你按别人的答案走然后问我怎么回事 木有这么玩的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Thriken
2012-10-24 · TA获得超过763个赞
知道小有建树答主
回答量:564
采纳率:66%
帮助的人:134万
展开全部
response.setCharacterEncoding("UTF-8");

放在request.getParameter()前面
更多追问追答
追问


">

这个是代码,还是乱码?
追答
你是GET方式提交还是POST方式?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式