request.getParameter(param) 的中文乱码问题

一、平时一贯的处理方式都是硬编码字符编码格式。

但是这种处理方式,也许你在window环境下测试后是正常的,但是放到linux环境下可能就又是乱码了,所以这种解决方案是没有保障的。

String message = request.getParameter("message");
String test = new String(message.getBytes("ISO-8859-1"),"utf-8");

二、我们可以换种思路:在传送参数的时候对字符串进行unicode编码,然后在接收参数的时候对unicode编码进行解析。这样就是不需要担心环境的问题了。

代码如下:

1、在设置参数时,将字符串进行unicode编码。

String message = Encodes.string2Unicode("当前密码为系统初始密码,必须修改密码!");
model.addAttribute("message",message);


2、在接收参数时,对unicode编码进行解码。

String message = request.getParameter("message");
model.addAttribute("message",Encodes.unicode2String(message));




你可能感兴趣的:(request.getParameter(param) 的中文乱码问题)