首 页文章中心下载中心客户留言老站入口
您当前的位置:网页制作文章中心网络编程JSP教程 → 文章内容 退出登录 用户管理
本类热门文章
相关下载
tomcat+mysql使用utf-8
作者:佚名  来源:不详  发布时间:2008-8-12 18:57:02

减小字体 增大字体

使用UTF-8其實對於JSP來說
對於在網頁经常會需要輸入或輸出多國語文上
算是一個比較方便的編碼
JSP的轉碼設定其實也不難..只要記得加上去即可
不然JSP內定的編碼可不是UTF-8喔

不過可惜的是MySQL至今尚沒有完整支援UTF-8
但是可別這樣就灰心囉
因為我門可以透過MySQL提供的Connection/J的JDBC介面來存取UTF-8編碼的資料
利用JDBC自動轉碼對我們撰寫網頁的人是很方便的

好拉!!不多說..馬上進入主題
我以下分幾個步驟來說明.很少.但都是需要設定的地方而已
只是提出來給大家注重

1.透過JDBC連接MySQL
12
Class.forName(com.mysql.jdbc.Driver).newInstance(); Connection conn = DriverManager.getConnection(jdbc:mysql://[hostname]/[database]?user=%26amp;password=%26amp;useUnicode=true%26amp;characterEncoding=utf-8);

紅字的地方一定要加入
因為那是呼叫(說呼叫應該可以吧)JDBC利用UTF-8的編碼來存取資料
簡單的說
就是JSP跟JDBC說....我只要UTF-8.其他免談....
這樣說了解吧^^

PS:
其實這部分我是建議最少用JSP include的方式來作.比較不會出錯
只要需要的時候include近來即可..有問題只要找尋一個檔案
不要像我每一個都得去檢查有沒有錯誤...
之前的問題就是有一個檔案的JDBC編碼設定為Big5
害我弄了好多天才找到.....
更進階的朋友可是試著用JavaBean來控制應該會更簡單

2.
網頁的部分一定要設定為如下的程式碼
1
%26lt;%@ page contentType=text/html;charset=utf-8 %%26gt;

是跟JSP跟瀏覽器(如IE)說我的編碼要用UTF-8來顯示

而下面這個pageEncoding可加可不加..我是習慣都加啦
不知道會不會有問題
請參考javamon65大大的精闢文章會更了解http://www.javaworld.com.tw/jute/post/view?bid=6%26amp;id=27113%26amp;sty=2
1
%26lt;%@ page pageEncoding=utf-8 %%26gt;


3.
當你用Form傳遞資料到另一個網頁後
那接收資料的編碼模式也得設定
不然所接收資料的編碼可是使用JSP內定的編碼
你看到的都是亂碼了
1
%26lt;% request.setCharacterEncoding(utf-8); %%26gt;


4.
相反的.假如你傳遞資料出去(表單似乎也包含在內.這我不太清楚得請教各位大大)
就必須設定下面的程式碼
1
%26lt;% response.setContentType(text/html;charset=utf-8); %%26gt;

告訴Tomcat需要使用UTF-8來處理資料的傳遞

5.
這也是很重要的一點喔
記得在編輯你的JSP檔案後
在儲存的時候記得儲存成為UTF-8的格式
因為我適用Dreamweaver MX
MX會自動依據ContentType來幫你儲存檔案所以不用擔心
但是你若是用NotePad(記事本)寫JSP的話
那就要在檔案格式那邊選UTF-8的格式來儲存囉
否則網頁顯示出來的一樣是亂碼
ex:你存成Big5格式來存檔.但是網頁編碼是設定為UTF-8
JSP跟瀏覽器連絡的時候自然是以UTF-8來處理
所以Big5的格式會變轉成UTF-8...當然是亂碼囉
所以記得這件很重要的事情

[] [返回上一页] [打 印]
文章评论 (评论内容只代表网友观点,与本站立场无关!)

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码

关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 管理登陆 yn11 QQ:1003368401