如何解决request.getrequest设置parameterr取值乱码问题

个简单的问题,我想追究一下深层次的原因:
前台的编码格式HTML里面的是utf-8的;;
但是后台使用request.getParameter("groupName");乱码;
我想了一下,我使用的是Get的方法提交的,默认的会走Encode的方法,但是Encode的方法编码格式默认的是ISO-8859-1编码,因此后台是乱码;
使用:String groupName=new String(request.getParameter("groupName").getBytes("iso8859-1"),"utf-8");
即可将乱码解决,因为,后台,先使用&request.getParameter("groupName").getBytes("iso8859-1"),使用ISO-8859-1解码,然后再使用utf-8编码,这样
可以正常现实,又因为,前台本身就是utf-8的,所以,你不需要在转义,即可在前台现实正常.
阅读(...) 评论()如何解决request.getParameter()取值乱码问题
客户端向服务器端发送信息,如果发送的编码和服务器端接收的编码不一样,使用request.getParameter()方法获取的表单信息会产生乱码。
客户端接收服务器的响应信息,如果响应编码与客户浏览器的编码不一致时,会造成中文乱码显示。
为了解决中文正常显示,可以采取以下两种方案。
(1)post方式提交表单
a,设置页面的编码
在jsp或HTML页面中,有时会涉及编码的定义,可使用统一编码,例如GBK或UTF-8
b,设置表单提交方式
在页面中,将
标记的method属性值设置为post,该属性默认为get,get方式会将表单信息采取特殊编码,然后借助于URL发送给服务器。
c,设置服务器接收编码
在使用request.getParameter()方式接收客户表单信息之前,使用以下代码设置接收编码,编码与页面保持一致。
request.setCharacterEncoding("UTF-8");
使用setCharacterEncoding()方法指定编码后,可以通过getParameter()方法按指定编码获得客户信息,如果不指定,则默认使用ISO-8859-1编码。
d,设置服务器端响应信息编码
设置服务器向客户端响应的信息编码,告诉浏览器采用指定编码显示,可以使用下列指令或代码。
在响应的jsp中,使用如下指令设置。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。关于request.getParameter方法获取值乱码问题-jsp-电脑编程网关于request.getParameter方法获取值乱码问题作者:student_2008 和相关&&http://localhost:8000/yeepay/callback.?r8_MP=%C9%CC%BC%D2%C0%A9%D5%B9%D0%C5%CF%A2现在通过这个url访问callback.页面我在页面上用request.getParameter(&r8_MP&)取出的值是乱码...为什么取到不是%C9%CC%BC%D2%C0%A9%D5%B9%D0%C5%CF%A2这个值.------回答---------------其他回答(40分)---------我积累的一些乱码处理:JSP中文乱码问题之一:调用JSP页面显示乱码通过浏览器调用JSP页面,在客户端浏览器中所有的中文内容出现乱码。解决:首先确认本JSP在编辑器中保存时,使用的是GBK的编码格式,然后在JSP页面的开始部分添加 & %@ pageEncoding=&GBK& %&就可以解决中文乱码问题。JSP中文乱码问题之二:调用Servlet页面显示乱码通过浏览器调用Servlet,Servlet在浏览器中显示内容出现乱码解决:在Servlet使用response在输出内容之前,先执行response.setContentType(&text/charset=GBK&)设定输出内容的编码为GBKJSP中文乱码问题之三:Post表单传递参数乱码通过JSP页面、HTML页面或者Servlet中的表单元素提交参数给对应的JSP页面或者Servelt而JSP页面或者Servlet接收的中文参数值乱码。解决:在接收POST提交的参数之前,使用request.setCharacterEncoding(&GBK&)设定接收参数的内容使用GBK编码JSP中文乱码问题更好的解决方法是使用过滤器技术Encoding过滤器package com. import .io.IOE import x.servlet.F import javax.servlet.FilterC import javax.servlet.FilterC import javax.servlet.ServletE import javax.servlet.ServletR import javax.servlet.ServletR public class Encoding implements Filter { public void destroy() { } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { request.setCharacterEncoding(&GBK&); chain.doFilter(request, response); } public void init(FilterConfig filterConfig) throws ServletException { } } Web.xml文件中的设置& filter& & filter-name&encoding& /filter-name& & filter-class&com.htt.Encoding& /filter-class& & /filter& & filter-mapping& & filter-name&encoding& /filter-name& & url-pattern&/ToCh_zn& /url-pattern& & /filter-mapping& JSP中文乱码问题之四:Get方式表单传递和URI方式传递参数乱码解决方案-tomcat-6.0.18\conf\server.xml在这个内加入一行& Connector port=&8080& protocol=&HTTP/1.1& connectionTimeout=&20000& redirectPort=&8443& URIEncoding=&GBK& /&------回答---------------其他回答(40分)---------
我积累的一些乱码处理: JSP中文乱码问题之一:调用JSP页面显示乱码通过浏览器调用JSP页面,在客户端浏览器中所有的中文内容出现乱码。解决:首先确认本JSP在编辑器中保存时,使用的是GBK的编码格式,然后在JSP页面的开始部分添加 & %@ pageEncoding=&GBK& %&就可以解决中文乱码问题。JSP中文乱码问题之二:调用Servlet页面显示乱码通过浏览器调用Servlet,Servlet在浏览器中显示内容出现乱码解决:在Servlet使用response在输出内容之前,先执行response.setContentType(&text/charset=GBK&)设定输出内容的编码为GBKJSP中文乱码问题之三:Post表单传递参数乱码通过JSP页面、HTML页面或者Servlet中的表单元素提交参数给对应的JSP页面或者Servelt而JSP页面或者Servlet接收的中文参数值乱码。解决:在接收POST提交的参数之前,使用request.setCharacterEncoding(&GBK&)设定接收参数的内容使用GBK编码JSP中文乱码问题更好的解决方法是使用过滤器技术Encoding过滤器package com. import java.io.IOE import javax.servlet.F import javax.servlet.FilterC import javax.servlet.FilterC import javax.servlet.ServletE import javax.servlet.ServletR import javax.servlet.ServletR public class Encoding implements Filter { public void destroy() { } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { request.setCharacterEncoding(&GBK&); chain.doFilter(request, response); } public void init(FilterConfig filterConfig) throws ServletException { } } Web.xml文件中的设置& filter& & filter-name&encoding& /filter-name& & filter-class&com.htt.Encoding& /filter-class& & /filter& & filter-mapping& & filter-name&encoding& /filter-name& & url-pattern&/ToCh_zn& /url-pattern& & /filter-mapping& JSP中文乱码问题之四:Get方式表单传递和URI方式传递参数乱码解决方案-tomcat-6.0.18\conf\server.xml在这个内加入一行& Connector port=&8080& protocol=&HTTP/1.1& connectionTimeout=&20000& redirectPort=&8443& URIEncoding=&GBK& /&
相关资料:|||||||关于request.getParameter方法获取值乱码问题来源网络,如有侵权请告知,即处理!编程Tags:                &                    

我要回帖

更多关于 request设置parameter 的文章

 

随机推荐