linux下中文传参的问题

       前一阶段给公司开发一个报工系统,开发是在windows环境下,部署在linux下运行。windows环境下运行一切正常,本以为到此可以大功告成了,不想第二天部署到linux上之后,页面数据保存之后查不出来。立即意识到可能是中文参数的问题,由于是get方式传参,windows环境下,前台页面对中文参数显示调用编码函数。代码如下:
content = encodeURI(peprows[i].content);

后台程序按照utf-8编码获取的中文参数内容,代码如下:

content = new String(request.getParameter("content").toString().getBytes("iso-8859-1"),"utf-8");

windows环境下可以正常获取参数内容,但是linux系统编码为utf-8,参数转换为中文后变为乱码,所以系统查询不出数据。针对此问题,前台代码不变,只要把前台获取的utf-8编码原模原样传递给后台查询方法即可,修改代码如下:

content = request.getParameter("content").toString();

此时,后台获取的参数和linux系统编码一致,都是utf-8,查询方法可以正常识别参数内容,问题解决。



你可能感兴趣的:(Java)