Struts處理接收參數亂碼問題(actionForm接受的參數發送至數據庫成亂碼)的解決辦法:
第一步: 新建一個類如:EncodingActionServlet 繼承 ActionServlet 覆蓋父類process()方法代碼如下:
package com.aptech.jb.epet.web.action;
public class EncodingActionServlet extends ActionServlet{
public void process(HttpServletRequest request,
HttpServletResponse response)
throws ServletException ,IOException{
request.setCharacterEncoding("GBK"); //處理亂碼
super.process(request, response); //調用父類方法
}
}
第二步,修改WEB-INF/web.xml配置為:
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>com.aptech.jb.epet.web.action.EncodingActionServlet</servlet-class>
</servlet>
//其他代碼略,就是將原來的ActionServlet修改為自定義的ActionServlet的子類
第三步:保存,重啟tomcat服務器,插入數據庫時候將不再 出現亂碼(jsp頁面的編碼也為“GBK”) 成功!
註:本方法是否有什麼缺陷我還不是很明確,如果資深高手看到本小菜的方法,還請多多指教啊! 謝謝!
作者“loading”