頁面通過URL傳遞中文參數出現中文亂碼的解決方法
- 前臺頁面使用url傳遞中文參數,在後臺獲取參數的時候,出現了亂碼現象
//前臺
var url = "http://localhost:8080/login.action?name=中國";
//後臺
String name = request.getParameter("name");//這裏的name拿到的是亂碼
- 根本原因:Tomcat默認使用ISO-8859-1編碼,而項目一般使用utf-8或者gbk,因此如果頁面通過URL傳參,而參數又含有中文的話,後臺拿參數的時候需要按照以下代碼進行轉換
String uname=new String(request.getParameter("name").getBytes("ISO-8859-1"), "utf-8");