JSP Java UTF-8 utf8 HTML

ปกติแล้วถ้าต้องการแสดงข้อมูลในเว็บเพจให้เป็น UTF-8 ก็ต้องใส่แท็ก meta ที่มีการตั้งค่าแอตทริบิวต์ http-equiv และ content ภายใต้แท็ก head

<head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        ...
</head>

หากในไฟล์ HTML นั้นมีฟอร์มที่จะต้องส่งข้อมูลไปยังโปรแกรม Java ในไฟล์ Java ที่ใช้ Servlet

สมมุติว่าในที่นี้เราใช้ method GET การเขียนโค้ดก็จะอยู่ในฟังก์ชัน

public void doGet(HttpServletRequest request, HttpServletResponse response)  ...

ในฟังก์ชันนี้จะต้องมีการตั้งค่า encoding UTF-8 ให้กับตัวแปร request 

request.setCharacterEncoding("UTF8");

หากต้องการส่งข้อมูลกลับเป็น UTF-8 ก็จะต้องตั้งค่า contentType ให้กับตัวแปร response

response.setContentType("text/xml;charset=UTF-8");