我使用的mysql数据库
数据库编码和字段都已经设置为gb2312 
使用jdbc方式连接数据库 
DriverManager.getConnection("jdbc:mysql://localhost/xxx?charsetEncoding=UTF-8", "root", "1234");
使用java文件向数据库中写数据后乱码,怎么才能正常写入啊html页面中的数据->java文件->数据库 如何保证没有乱码?请指点?

解决方案 »

  1.   

    全部用UTF-8格式
    JSP页面UTF-8
    struts2 UTF-8
    tomcat 默认也是utf-8
    数据库安装选择字符utf-8
    我一直是这样做.从来不担心字符乱码问题,而且简体,繁体插入数据库都没问题.正常显示
      

  2.   

    建议使用统一的字符编码  lz数据库编码和字段都已经设置为gb2312 页面相应用gb2312
      

  3.   

    http://topic.csdn.net/u/20091224/04/d09ec216-9cda-426d-b561-701833f51a50.html
      

  4.   

    建议用gbk,统一用一样的,页面用gbk,然后代码里new String(request.getParameter("username").getBytes(),"gbk"); 这样读入读出数据库就是中文了
      

  5.   


    一个原则:所有涉及到编码的地方,都设置成相同编码。对你来说就是都设置成gn2312
    所以,你还有几个地方没有设置:
    1)JDBC连接字符集改成GB2312
    2)你的java,jsp,html源文件保存格式是gb2312(如果是eclipse,点文件属性可以改)

    3)jsp,html里面,说的都泛滥的:encoding改成gb2312估计你3)已经做到了。但是尤其1和2,你没注意。修改过来,就可以解决