character_set_results
          character_set_server

          Java瑣事

          -I am not alone
          posts - 54, comments - 30, trackbacks - 0, articles - 1
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理
              使用java編碼,jsp頁面顯示,mysql數據庫管理數據,真正的開發過程中還可能用到其他框架,或者插件,這么多不同的東西混合在一起,總會有可能產生編碼不同的問題,中文的顯示很容易就變成了亂碼。所以這里我要說下對編碼一致性的設置。
              前臺使用jsp,插件有fckeditor,后臺數據庫使用mysql,可視化工具sqlyog。這里用utf-8編碼。現在開始配置:
          1. jsp:每個頁面上聲明好<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
          2. IDE工具:在MyEclipse中配置默認的編碼。可以在windows-preference中設置
          3. mysql:這里是我想說的重點。mysql安裝版一般都是utf-8,而好多免安裝版的都是gbk,打開sqlyog后,單擊左側的root@localhost,再選中右側下部的5 Info,就能看到 Show Variable[local] 的所有參數,這里看
          character_set_client
          gbk
          character_set_connection utf8

          character_set_database
          utf8

          character_set_filesystem
          binary
          utf8
          utf8
          character_set_system utf8
          是不是已經都是utf8了,如果不是,打開mysql的安裝目錄,找到my.ini文件,修改相應部分的編碼方式,比如我的就需要這樣

          [mysql]

          default-character-set=utf8

          再次使用sqlyog,就能看到相應的改變了。
          但如果你沒有安裝可視化工具,也可以在命令行中使用show variables命令查看編碼。
          這樣,基本上所有的地方都設置成了utf-8,其實這些地方都設置成gbk也是可以的,只要統一好就行。
          然后,使用sqlyog的時候就不會看到數據庫中都是亂碼,或者頁面上顯示時亂碼了。

          除了中文編碼存儲不一致之外,還有另一種情況,就是urlencode的問題,比如在百度中輸入中文關鍵詞搜索,地址欄中最后會顯示它的gbk式的編碼,http://www.baidu.com/s?wd=%C4%E3%BA%C3 這其實是兩個中文(你好)的gbk編碼,而utf-8式的編碼則是每個中文有三個類似%C4 的組合。
          主站蜘蛛池模板: 东丽区| 大化| 留坝县| 宝应县| 定陶县| 苗栗县| 忻州市| 徐汇区| 安吉县| 荆州市| 遂溪县| 宜君县| 黔西县| 百色市| 上蔡县| 巴塘县| 五华县| 宜都市| 南城县| 昆山市| 屏东市| 邻水| 沁阳市| 扎鲁特旗| 特克斯县| 盐源县| 和顺县| 蒙自县| 颍上县| 息烽县| 临汾市| 湛江市| 甘肃省| 蚌埠市| 遵义市| 四川省| 麦盖提县| 莱州市| 娄底市| 内江市| 屏东县|