post請求的中文亂碼問題


post請求的中文亂碼問題

設置請求體的字符集為UTF-8,從而解決post請求的中文亂碼問題
req.setCharacterEncoding("UTF-8");

這段語句必須在獲取請求參數之前調用才有效,如果你先獲取了密碼的參數,再設置字符集,然后再獲取用戶名的參數,那么用戶名的參數也會亂碼的。

package LWB;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Arrays;

public class ParameterServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("----------------doGet---------------");
        String username=req.getParameter("username");
        String password=req.getParameter("password");
        String[] hobby=req.getParameterValues("hobby");
        System.out.println("用戶名:"+username);
        System.out.println("密碼:"+password);
        System.out.println("興趣愛好:"+ Arrays.asList(hobby));
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//      設置請求體的字符集為UTF-8,從而解決post請求的中文亂碼問題
        req.setCharacterEncoding("UTF-8");
        System.out.println("----------------doPost---------------");
        String username=req.getParameter("username");
        String password=req.getParameter("password");
        String[] hobby=req.getParameterValues("hobby");
        System.out.println("用戶名:"+username);
        System.out.println("密碼:"+password);
        System.out.println("興趣愛好:"+ Arrays.asList(hobby));
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM