web項目亂碼 很詳細的解決方案

首先看一下你的web項目亂碼屬於那一種症狀

     一:頁面亂碼(數據庫,class中的數據是正常的,但在視圖層顯示卻亂碼)

            亂碼原因:1:jsp解析編碼與jsp編碼設置不一樣。

                          2:response(應答)編碼與jsp解析編碼不一致,或者是沒有對response做編碼設置。

         舉例說明:1:如圖所示  

               

                charset="iso-8859-1"  表示本jsp的解析編碼爲iso-8859-1;

            pageEncoding="UTF-8"  charset="UTF-8" 都表示本jsp的字符編碼爲UTF-8;


                                          1 導致結果:                                                                                    1應該結果:

                  

                                      2導致結果:                                                                                                                               2 應該結果:        

            解決方案:1:將jsp解析編碼修改爲"UTF-8";

                           2.1:在jsp中添加    <%response.setCharacterEncoding("UTF-8"); %>

                           2.2 :寫一個攔截器 filter (見文章《struts1 一個很簡單的登錄演示》)



     二:控制檯打印亂碼(視圖層正常參數傳到業務邏輯層時,業務邏輯層出現亂碼)

            亂碼原因:1:系統語言不支持中文 。

                          2:request(請求)編碼與class編碼不一致,或者是沒有對request做編碼設置。
        舉例說明:1,2:如圖所示 


                                     1 導致結果:                                                                                 2 應該結果: 

                                                             

            解決方案:1:最好是將系統語言修改爲 “中文(簡體  中國) ”

                           2.1:在jsp中添加    <%request.setCharacterEncoding("UTF-8"); %>

                           2.2 :寫一個攔截器 filter (見文章《struts1 一個很簡單的登錄演示》)



    三:數據庫亂碼(在視圖層添加顯示正常的記錄到數據庫時,數據庫中查詢的值爲亂碼)這裏以mysql爲主

           亂碼原因:1:沒有對連接方式設置編碼 或者編碼不一致 。

                           2:沒有對腳本設置編碼 或者編碼不一致。

            解決方案:1:


                               2:

            


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章