在JSP页面中向MYSQL数据库中插入记录,
点击“提交”
出现乱码如下:
已经加入了BYTE 数组了。
    String n1=request.getParameter("name1");
    String n2=request.getParameter("name2");        byte aa[] = n2.getBytes("ISO-8859-1");
       n2 = new String(aa,"gb2312");    String n3=request.getParameter("name3");
    String n4=request.getParameter("name4");
       byte bb[] = n4.getBytes("ISO-8859-1");
       n4 = new String(bb,"gb2312");
    String n5=request.getParameter("name5");请问怎么解决此问题,望大师赐教与我,当不胜感激。

解决方案 »

  1.   

    response.setchar``````("GBK");
    request.setchar```````("GBK");什么的,忘记了
    点的出来的.
      

  2.   

    你用过滤起了吗?Filter
    就加一句化  request.setCharacterEncoding("GBK");
      

  3.   

    http://blog.chinaunix.net/u/21684/showart_208239.html
    乱码终结
      

  4.   

    首先你去数据库里面查一下,看看是不是乱码,如果是,说明你程序向数据库里插入的时候有问题,插入时候保持和数据库编码一直就可以了,例如数据库是GBK
    那么你就把数据都转化成GBK再插入,如果数据库里面不是乱码,那就是读取的问题。同理,读出来之后先打印在控制台上看看,如果是乱码,那么就在读取的时候转码,存的时候用什么字符编码,取的时候就用什么编码,如果打印在控制台能正常显示,那么就是你页面的编码问题,设置下
    <%@page contentType="text/html;charset=GBk"%>
      

  5.   

    解决办法只有这样1:由于mysql和java的链接不是很好,java和oracle的链接是非常好的,他们之间可以很好的处理乱码问题,第二,如果你非要使用mysql的话,那么只有在建立mysql数据库的时候将字符集设置成utf8,因为mysql默认的是latin好像是这个,还有你在你的webxml中配置一个filter就好了,filter的代码请到我的技术博客中下载,很简单,祝你成功!!!
    http://wangwenjun69.javaeye.com/blog/188037
      

  6.   

    看看MYSQL安装目录下的MY.INI文件.里关于设置字符编码的地儿.(应该有两个.)改成GBK就OK了.用FILTER吧.省事.
      

  7.   

    所有需要设置的地方
    全部设置成UTF-8
      

  8.   

    本问题是这样解决的,把BYTE数组去掉,然后把charset改成Charset.谢谢大家的支持。