一、平时一贯的处理方式都是硬编码字符编码格式。
但是这种处理方式,也许你在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);
String message = request.getParameter("message");
model.addAttribute("message",Encodes.unicode2String(message));