mysql存入数据中文变问号解决方法 与 中文js传参到后台编码解决方法

在EntityManage merge中,可以顺利取出中文,但修改属性值后存入变问号了

解决方法,将mysql中的mysql.ini的latin改成gbk

后重启电脑或者mysql就可以了

装Mysql时没有好好设置成gbk的原因

http://www.iteye.com/topic/985726

 

PS:

EXT等js传参方法:

  opinionStr = encodeURI(encodeURI(opinionStr));

 Ext.Ajax.request(
   {
    url:'../addOpinion.action?opinionStr=' + opinionStr+'&uid='+id,
//    url:'../addOpinion.action&uid='+id,
//    params:{ 
//     items:encode(Ext.util.JSON.encode(items))   //就是将字符串编码一下 
//     }, 
    success: function()
    {
      showSuccessInfo();
    },
    failure: function()
    {
     Ext.Msg.alert('状态', '操作失败!');
    }
   });

在action中再修改回中文兼容的UTF-8编码

try {
   opinionStr = java.net.URLDecoder.decode(opinionStr,"UTF-8");
   System.out.println("后"+opinionStr);
   
  } catch (UnsupportedEncodingException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }

 

posted on 2012-11-21 15:02  justinchinawz  阅读(416)  评论(0)    收藏  举报

导航