999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

WEB開發中不同情況下的亂碼處理方案

2015-06-11 16:00:48曹露

摘 要:隨著時代的改變,現在人們與計算機已經是密不可分,信息技術的應用顯得異常重要。而在WEB系統開發中經常出現一些亂碼狀況,本文針對WEB開發中遇到的不同亂碼情況研究不同的處理方案。在整個B/S請求從客戶端頁面提交內容到服務器,服務器接收響應,并從數據庫中獲取數據,經過一番處理之后再返回給客戶端的瀏覽器頁面顯示的過程中,只要一個環節在轉碼過程中有錯誤就會導致亂碼的現象發生。在計算機系統上突然出現亂碼情況,需要先判斷亂碼的現象,要根據現象,查出數據在整個數據流向的過程中,數據到底從什么時候什么地方開始由正常開始變為亂碼,即找出數據變成亂碼的分界點。

關鍵詞:WEB開發;亂碼;處理方案

0 引言

亂碼是應用系統運行中經常出現的一個問題,也是應用系統中非常突出而且必須解決的一個問題。由于引起出現亂碼的因素很多,例如:數據庫本身的亂碼,字符的亂碼,JDBC與數據庫數據交換時的編輯問題,所以解決亂碼問題比較復雜,本文針對這幾個亂碼問題提出了相應的解決方案。本文從編碼原理到實際案例對亂碼原因進行詳細的分析,并且整理和歸納了多個項目出現亂碼現象的解決經驗,總結了解決一般性亂碼的辦法和過程。針對我們遇到亂碼問題的經驗總結,同時,列出了不同環境下經常遇到過的亂碼問題的解決過程:

1 數據庫本身亂碼的解決方案

1.1 比如:Oracle數據庫在安裝的過程中就可以選擇某種字符集:ALTER DATABASE CHARACTER SET ZHS16GBK。

查找當前字符集:select userenv('language') from dual;DB2在創建數據庫的時候可以指定字符集:create database sccrm using codeset UTF-8 territory CN。

MySQL在創建數據庫的時候可以指定字符集:create database testxxx default charset=UTF-8。

1.2 操作系統是否安裝相應的字符集(unix下可以用locale查看當前字符集),將相應的數據打印出來即可。

1.3 Java程序是否存在轉碼錯誤,字符集經常是在UTF-8、GBK、ISO-8859-1之間轉換。

2 應用服務器各個相關設置字符集的地方是否設置正確

找到分界點之后,針對分界點之前和之后,查找在什么地方可以設置字符集,每一個分界點可以在哪些地方設置相關的字符集。如果是程序,可以查找到哪一行代碼獲取數據的時候開始亂碼,從而可以考慮修改代碼。如果不是程序,需要查看當前應用有哪些地方可以設置字符集,并且要了解每個設置字符集的地方,他們之間的相互關系。

3 對字符亂碼問題定位的常用技巧

在網絡系統中經常會出現字符亂碼的情況,在這種情況下,首先要對字符亂碼問題定位:如對中文encoding問題的定位基本采用在認為有可能的程序處理后打印字符串的內碼,這是最簡單的也是最直接的辦法。

4 JDBC與數據庫數據交換時的編輯問題

在JAVA運行期時,內容交換的編碼為unicode編碼,JDBC接收到的字符流必須是合法的編碼格式,然后由JDBC向數據庫提交數據請求。

JSP/Servlet 編程中經常出現編碼問題,除了上述討論的方面,另一方面是讀寫數據庫中的數據。

在目前的行業里經常使用的關系數據庫的系統大多都支持數據庫多語言編碼,在創建數據庫時基本上都可以制定它自己的字符集設置,數據庫的數據就將以指定的編碼形式存儲。當應用程序訪問數據時,在入口和出口處都會有encoding 轉換。對于中文數據,數據庫字符編碼的設置應當保證數據的完整性。GB2312、GBK、UTF-8、ISO-8859-1等都是可選的數據庫編碼。但是如果編碼設置成了ISO-8859-1,則應用程序在寫數據之前須將16Bit的一個漢字或 Unicode 拆分成兩個8-bit的字符,讀數據之后則需將兩個字節合并起來,同時還要判別其中的SBCS字符。這種情況沒有充分利用數據庫編碼的作用,反而增加了編程的復雜度。因此ISO-8859-1不是推薦的數據庫編碼。針對上述狀況,下列代碼示例了如果Java應用是基于GB18030編碼,而數據庫編碼是ISO-8859-1的情況,如何通過Java代碼轉換字符而不會產生亂碼。

5 客戶端與服務器之間的數據交換編碼問題

從browser到web server,我們可以在表單中指定出提交內容的時候所用到的這些字符集,否則我們就會使用頁面指定的這些編碼。但是如果在url中直接用?的方式輸入參數的話,那么編碼往往會是操作系統本身的這些編碼,因為此時是和頁面無關緊要的。Web server它所接收到的是字節流的,默認是(getParameter)會以iso8859-1編碼處理,結果肯定是不對的,所以就需要進行處理解決。我們如果提前設置了編碼(通過request. setCharacterEncoding ),那么就可以直接獲取到正確的結果。

參考文獻:

[1]周兵.Java Web開發中的中文亂碼問題分析及解決方[J].電腦知識與技術,2014-10-15.

[2]楊金花.JSP技術中文亂碼的原因及解決方法[J].電子設計工程,2011-01-05.

[3]張瑋,文福安,李江濤.J2EE Web應用中URL中文亂碼問題的研究[J].計算機時代,2008-10-02.

[4]朱明倫.管理技術在Web2.0應用中的研究[J].上海師范大學,2006-

04-01.

[5]鄒俊.基于Oracle數據庫系統性能調整與優化研究[J].江西財經大學,2006-10-01.

作者簡介:

曹露,女,1982年11月,河南洛陽人,漢,就職于河南省農業經濟學校,研究方向:信息技術方面。

主站蜘蛛池模板: 亚洲高清中文字幕| 中文字幕在线欧美| 女人av社区男人的天堂| 台湾AV国片精品女同性| 被公侵犯人妻少妇一区二区三区| 视频二区国产精品职场同事| 无遮挡国产高潮视频免费观看| 98精品全国免费观看视频| 中文国产成人精品久久| 91娇喘视频| 亚洲国产午夜精华无码福利| 国产在线观看人成激情视频| 国产精品久久久久久久久久98| 国产SUV精品一区二区| 高清免费毛片| 99久久国产综合精品女同| 亚洲床戏一区| 91小视频在线| 日本影院一区| 欧美性猛交一区二区三区| 麻豆精品在线视频| 久久精品91麻豆| 欧美精品在线免费| 在线播放精品一区二区啪视频| 黄片在线永久| 亚洲欧美日韩色图| 国产精品无码AV中文| 国产精品免费福利久久播放| 2020久久国产综合精品swag| 亚洲AV电影不卡在线观看| 久久99国产乱子伦精品免| 欧美在线中文字幕| 成年网址网站在线观看| 97超碰精品成人国产| 久久精品嫩草研究院| 欧美日韩国产在线播放| 亚洲乱亚洲乱妇24p| 国产成人一区免费观看| 久久一本日韩精品中文字幕屁孩| 久久国产精品麻豆系列| 91精品网站| 国产福利影院在线观看| 广东一级毛片| 国产亚洲精品va在线| 国产精品第一区在线观看| 亚洲成在人线av品善网好看| 国产h视频在线观看视频| 亚洲人成日本在线观看| 黄色三级毛片网站| 国产男人的天堂| 欧洲av毛片| 无码福利视频| 亚洲成a人在线播放www| 亚洲中文制服丝袜欧美精品| 国产一级二级在线观看| 98超碰在线观看| 四虎永久在线精品影院| 亚洲综合色婷婷中文字幕| 精品久久国产综合精麻豆| 久久精品国产精品青草app| 国产一级视频久久| 欧美成a人片在线观看| 亚洲婷婷在线视频| 日韩 欧美 小说 综合网 另类| 99re免费视频| 九一九色国产| 天堂在线亚洲| 2018日日摸夜夜添狠狠躁| 国产麻豆福利av在线播放| 国产精品男人的天堂| 国产精品嫩草影院av| 中字无码av在线电影| 国产h视频免费观看| 国产亚洲日韩av在线| 欧美a在线看| 人妻无码AⅤ中文字| 国产精品思思热在线| 欧美精品在线视频观看| 中文字幕在线观看日本| 国产高清在线丝袜精品一区| 中文字幕无码制服中字| 亚洲成在线观看|