此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【huodaomei】截止到2008-08-04 08:41:03的历史汇总数据(不包括此帖):
发帖的总数量:2                        发帖的总分数:40                       每贴平均分数:20                       
回帖的总数量:4                        得分贴总数量:0                        回帖的得分率:0%                       
结贴的总数量:0                        结贴的总分数:0                        
无满意结贴数:0                        无满意结贴分:0                        
未结的帖子数:2                        未结的总分数:40                       
结贴的百分比:0.00  %               结分的百分比:0.00  %                  
无满意结贴率:---------------------无满意结分率:---------------------
如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html

取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=huodaomei

解决方案 »

  1.   

    请参考我们的jsp文档中,对中文乱码的讨论:
    http://family168.com/tutorial/jsp/html/jsp-ch-02.html#jsp-ch-02-02
      

  2.   

    http://family168.com/tutorial/jsp/html/jsp-ch-02.html#jsp-ch-02-02
    我看了这个网址
    我的基本设置都和你的基本是一样的
    所以还是出现乱码!
      

  3.   

    jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=GBK
      

  4.   

    jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=gb2312我现在连接:
    db中:jdbc:mysql://localhost:3306/mydb
    再bean中如何解决呢?这样写是ok得
    但我之前是这么做的
    现在不想这样写!还有什么好的方法来解决?
      

  5.   

    我用debug进行调试后
    发现保存的该参数是乱码!
    连接配置应该是没有问题的!
    jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=gb2312我现在连接:
    db中:jdbc:mysql://localhost:3306/mydb
    再bean中如何解决呢?这样写是ok得
    但我之前是这么做的
    现在不想这样写!还有什么好的方法来解决? 
      

  6.   

    那你先弄个过滤器把网页和java中的文字都过滤为GB2312。
    用request.setCharacterEncoding("GB2312"),response.setCharacterEncoding(("GB2312")。
      

  7.   

    我个人认为没有必要那么麻烦
    使用过滤器把网页和java中的文字都过滤为GB2312。 
    我使用资源配置文件对页棉进行编译成汉字!
      

  8.   

    最后看看能不能解决了
    如不能就只能采取用过滤!
    在不行的话就还是用以前的方法来做!
    这样做不太好!
    jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=gb2312;
      

  9.   

    既然你的jsp和mysql都是采用了GB2312
    那就是在传输过程中字符编码产生了变化
    在servlet中加入
    也可以写一个filter来处理request.setCharacterEncoding("GB2312");
    response.setCharacterEncoding("GB2312");
      

  10.   

    在页面中我没有
    加这行java代码
    request.setCharacterEncoding("GB2312");
    在bean中就不能进行相应的转换,然后直接插入数据库中?
    还有其他好的方法?
      

  11.   

    我在bean 中用debug跟踪到context行
    title行得汉字就变成了? 乱码
    title = new String (title.getbytes("ISO-8859-1","GB2312")); 
    context= new String (context.getbytes("ISO-8859-1","GB2312")); 
    String strsql =  (insert into tablename ) values ('+"title"+','+"context");
      

  12.   

    你页面是什么编码方式?
    是ISO-8859-1吗?
      

  13.   

    晕。
    那你加这些语句干嘛?
    title = new String (title.getbytes("ISO-8859-1","GB2312")); 
    context= new String (context.getbytes("ISO-8859-1","GB2312")); 
    你页面的编码方式是ISO-8859-1,才需要上面的语句将编码方式转为GB2312。
      

  14.   

    楼上的,你一定是不明白!
    我是往db中插入数据!
    所以在bean 中把iso-8859-1 进行编码转换
    之后直接插入db中!
    在db中出现乱码!
      

  15.   

    你bean中的数据不是从网页的表单中收集的?如果是那么编码格式就应该是你网页设定的格式。
      

  16.   

    楼上的你到底名不明白阿
    页面的是encoding = "gb2312"
    title  = new String (title.getbytes("iso-8859-1"),"gb2312") 
    title 中的gb2312和页面的是一致的才可以!
    这样是不能产生乱码的!
      

  17.   


    你页面的编码格式是GB2312,那么它里面的表单提交给action时,文字的编码格式也是GB2312。
    你的这个title  = new String (title.getbytes("iso-8859-1"),"gb2312")是将编码格式为:ISO-8859-1的文字转换为GB2312的编码格式。