最近写一个java web项目,乱码问题搞得我简直想死了,总结一下收集到的乱码解决方案
1.在安装myeclipse的时候,把所有能设置的编码方式都设置成utf—8,具体配置方法可百度:myeclipse安装后配置
2.安装tomcat的时候也把编码方式设为utf-8,若安装好,可在安装目录下的server.xml文件中更改编码模式
3.安装mysql数据库时,把默认编码模式选为utf-8,若已经安好,可选中那个表,点击设计,选择要改变编码的column,下面会有“字符集”选项,选择utf-8
4.在用request.getParameter()获取值之前先加上
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
设定获取的值编码类型为utf-8
5.若是还是有乱码则
String 变量名 = new String(request.getParameter("jsp变量名").getBytes("ISO-8859-1"),"UTF-8");
把获得的值转为utf-8
附:
当遇到乱码问题时应先确定是在哪个过程中发生的乱码,基本上一是在获取jsp页面值得时候,二是在插入数据库的时候这时候我们可以在servlet中添加System.out.println(乱码变量名);在控制台中来输出这个变量,若是乱码,则发生在获取值得过程中,若不是,则发生在插入数据库当中。