1.解决request中文乱码问题常用办法
request.setCharacterEncoding("UTF-8");
2.解决response中文乱码问题常用办法
response.setContentType("text/html;charset=UTF-8");
3.解决连接mysql数据库中文乱码问题常用办法
(1)情况一:传统配置
String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8";
(2)情况二:xml文件中配置(&需要用 &进行转义)
url="jdbc:mysql://localhost:3306/stums?serverTimezone=UTC&useUnicode=true&characterEncoding=UTF-8"
4.解决window.location.href中传参时中文乱码问题
第一步:JSP中使用encodeURI();
var bookTitle = encodeURI(document.getElementById("tags").value) ;
window.location.href="GetBook.do?bookName="+bookTitle;
第二步:Controller中有两种方式
方式一:
String bookTitle = request.getParameter("bookTitle ");
String str=new String(bookTitle.getBytes("ISO-8859-1"),"UTF-8");
方式二:
String bookTitle = request.getParameter("bookTitle ");
String str = java.net.URLDecoder.decode(bookTitle, "utf-8");