1. 程式人生 > >JAVA Web開發中前後臺數據互動中文亂碼問題解決方法及說明

JAVA Web開發中前後臺數據互動中文亂碼問題解決方法及說明

一 、基於BaseServlet (BaseServlet extends HttpServlet),如果BaseServlet中不設定任何編碼格式,在其子類QueryCustomer  (QueryCustomer extends BaseServlet)中獲取到前端傳回來的資料亂碼???

      原因是tomcat的自帶編碼是ISO-8859-1的格式,是不相容中文的編碼的。

      解決方法是:採用相同的格式去接收(ISO-8859-1),然後用能解析的編碼(utf-8)去轉換。這樣就能得到中文了。

      例:custName = new String(custName.getBytes("ISO-8859-1"), "UTF-8");// 解決亂碼問題

      得到資料進行處理後,再發往前臺頁面,也需要設定編碼格式:response.setContentType("text/html;charset=utf-8");

二、基於BaseServlet (BaseServlet extends HttpServlet)的,如果在BaseServlet中設定了編碼格式,子類就不需要設定了,直接獲取資料使用即可。