jsp 页面form 提交的内容 到了action中接收到后 打印出来中文出现乱码
请问大虾们有没有最简单 方便的办法 感激不尽!!

解决方案 »

  1.   

    检查下表单提交的方式 确认是post 而不是get
      

  2.   

    指定一下中文编码方式:
    例如 你传递了一个id="中文"
    在接收页面,你可能会写String id=request.querySring("id") //具体哪个函数忘记了,反正就是接收的那个函数,哈哈
    然后你可以指定id的编码方式 id = new String(id.getByte("iso-8859-1"),"gb2312")
    之后,id就不会是乱码了,你试试看
      

  3.   

    如果是post的提交的话,统一编码就不会出这问题了,一般项目的话,建议添加一个过滤器,如果是struts2的话,也可以直接用自带的拦截器;
    如果的get的请求的话,最直接的解决方案就是修改一下server.xml:
     <Connector port="8080" protocol="HTTP/1.1" 
                   connectionTimeout="20000" 
                   redirectPort="8443" URIEncoding="UTF-8"/>
    这样就应该能解决了
      

  4.   

    不行啊 加了拦截器 和修改了 server.xml 都不行
    我的jsp页面form 是post方法传递 并且 
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
    我的拦截器
    <filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>
    org.springframework.web.filter.CharacterEncodingFilter
    </filter-class> 

    <init-param>
    <param-name>encoding</param-name>
    <param-value>UTF-8</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
      

  5.   

    如果进行了编码转换 检查下表单提交的方式 确认是post 而不是 我以前就预过同样的问题
      

  6.   

    好像是struts的一个bug,
    配置中间件的编码格式,
    也可以用spring的编码,
    自己也可以写个filter。
      

  7.   

    页面编码用GBK  数据库编码用UTF-8解决了 居然