JavaWeb项目中文乱码问题
1.从浏览器读数据乱码(post 请求方式)
前提是前端页面是UTF-8编码,因为服务器端默认采用ISO解码,所以乱码,在读取前加上:
request.setCharacterEncoding("utf-8");
2.从浏览器读数据乱码(get 请求方式)
通过程序修改编码,例如读取name数据,一般建议用这个方法:
//.由程序转换编码 String name = request.getParameter("name"); System.out.println(name); byte bytes[] = name.getBytes("ISO-8859-1"); name = new String(bytes, "utf-8"); System.out.println(name);
3.TomCat服务器读取数据乱码(get请求)
1.找到server.xml,像图中65行,增加一个属性 URIEncoding="UTF-8" ,虽然很好用,但是一般不建议使用。
4.响应到浏览器的数据乱码(不管get/post),在建立连接前加上:
response.setContentType("text/html;charset=utf-8");