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

本文探讨了在使用EntityManagemerge时遇到的中文显示问题,并提供了通过修改MySQL配置来解决的方法。同时,介绍了如何在JavaScript中正确进行字符串编码以确保数据在前后端之间的传递兼容性。

在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();
  }

 

转载于:https://www.cnblogs.com/justinchinawz/archive/2012/11/21/2780759.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值