天天看點

java_web當中用戶端-伺服器端對于中文編碼格式的處理

重點内容

javaWEB當中的編碼處理

  1. 響應編碼處理

    response.setContentType(“text/html;charset=utf-8”);

    response.getWrite().print(“你好,中國人!!!”);

  2. 請求編碼處理

    用戶端的目前請求頁面的編碼格式是由伺服器端轉發到這個頁面的之前一個請求頁面的編碼格式.

  3. 伺服器端接收用戶端求情時由用戶端傳遞過來的參數編碼處理

    模式一:用戶端在位址欄直接填寫URL及參數

    ==>此方式無法解決中文亂碼問題,因為這種方式不可取

    模式二:用戶端通過請求頁面的表單或者超連結來請求并傳遞參數

    ==>此方式需分兩種情況來處理

    1):通過Get方式請求處理方法

    方法:服務端每次擷取用戶端傳遞過來的參數之後,必須重新反編譯到原始位元組碼,并重制用UTF-8編碼.

    String userName = request.getParameter("username"); Byte[] bytes = userName.getBytes(userName,"ISO-8859-1"); userName = new String(bytes,"utf-8");

    這樣擷取到的傳遞過來的userName值才不會亂碼.

    2):通過Post方式請求處理方法

    方法:服務端在擷取用戶端傳遞過來的參數之前,設定一次編碼格式為UTF-8編碼就行了.

request.setCharacterEncoding="utf-8";
String userName  = request.getParameter("username");
           

這樣擷取到的傳遞過來的userName值才不會亂碼.