FormBean接收的都是乱码,怎么解决啊一个注册页面reg.jsp,采用post提交到regAction如:
userForm.setUsername(userForm.getUsername());
System.out.println(userForm.getUsername());
//这里输出的全是?????
插入到数据库中也是?????页面编码是utf-8网上找了很多资料,用ISO-8859-1转换也不行确实是没办法了,希望各位大侠能提供解决的方法,小弟感激不尽

解决方案 »

  1.   

    把JSP的編碼改成
    <%@ page language="java" import="java.util.*" pageEncoding="GBKcontentType="text/html; charset=GBK"%>如果不行,加個過濾器,可以用struts里的那個或者在ACTION中加上
       request.setCharactorEncoding("GBK");response.setCharactorEncoding("GBK");
    如果還不行,String username = new String(userForm.getUsername().getBytes("ISO-8859-1"),"GBK");
    試試看
      

  2.   

    楼上第三种方法绝对是可行的
    不过有点麻烦还是用在web.xml文件中加个过滤器比较操作简单
    在这社区里面有一篇贴写得比较详细
    忘地址了
      

  3.   

    把页面编码改成GBK确实是可以,formbean接收的也是中文,为什么插入到数据库中就是?????了呢我用的是mysql版本是:
    Your MySQL connection id is 10 to server version: 3.23.58-nt连接的时候设置的编码也由UTF-8改成了GBK结果插入到数据库中后还是问号
      

  4.   

    十分感谢,我乱玛问题解决了,谢谢啊,太谢谢了原来统一编码是行不通的,要全部设置成GBK,哈哈