有个页面test.jsp,在某个功能的时候,跳转地址为 url:test.jsp?param1=参数1;
当跳转到时候,我在本jsp中用 request.getParameter("param1");来接收该参数,可是接过来的值是乱码,
jsp页面也设置了<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> 编码格式。
乱码问题却一直有;
然后我尝试将 url encodeURI,然后接收后decodeURI,也没用,还是乱码。
晕啊。此种方式到底该如何才能不会出现乱码啊???   帮帮忙.....!  非常感激..!

解决方案 »

  1.   

    request.getParameter("param1");之前可以先进行转码Request.serCharacter("utf-8");,response.setCharacter("utf-8");你还可以使用过滤器
      

  2.   

    post请求和get请求在被web容器处理时一般会做不同处理,
    乱码解决的根本途径是注意以下几个地方编码是否统一:
    1。页面
    2。文本、js、属性文件
    3。web容器编码设置
    4。数据库本身编码设置(包含数据库表、字段编码设置)你可以检查下你服务器对get请求的编码是否正确。(通常web容器会对你的get请求做一次编码)
      

  3.   

    getParameter()如果要接收中文的话,在前面要用setCharacterEncoding("utf-8"),这样就不会乱啦
      

  4.   

    不过这种只能处理method为post的表单
      

  5.   

    request.setCharacterEncoding("utf-8");
    response.setContentType("text/html;charset=utf-8");