Tomcat5 0亂碼全解決方案

2021-08-29 15:04:12 字數 1038 閱讀 7566

首先,說說jsp/servlet中的幾個編碼的作用。

在jsp/servlet中主要有以下幾個地方可以設定編碼,pageencoding="utf-8"、contenttype="text/html;charset=utf-8"、request.setcharacterencoding("utf-8")和response.setcharacterencoding("utf-8"),其中前兩個只能用於jsp中,而後兩個可以用於jsp和servlet中。

1、pageencoding="utf-8"的作用是設定jsp編譯成servlet時使用的編碼。

眾所周知,jsp在伺服器上是要先被編譯成servlet的。pageencoding="utf-8"的作用就是告訴jsp編譯器在將jsp檔案編譯成servlet時使用的編碼。通常,在jsp內部定義的字串(直接在jsp中定義,而不是從瀏覽器提交的資料)出現亂碼時,很多都是由於該引數設定錯誤引起的。例如,你的jsp檔案是以gbk為編碼儲存的,而在jsp中卻指定pageencoding="utf-8",就會引起jsp內部定義的字串為亂碼。

另外,該引數還有乙個功能,就是在jsp中不指定contenttype引數,也不使用response.setcharacterencoding方法時,指定對伺服器響應進行重新編碼的編碼。

public void dofilter(servletrequest request, servletresponse response, filterchain chain) 

throws ioexception,servletexception

2、在jsp頁面中加上:

<%@ page contenttype="text/html;charset=utf-8" %>

3、修改tomcat5.0的d:\jakarta-tomcat-5.0.30\conf\server.xml

找到connector部分

加上usebodyencodingforuri="true" uriencoding="utf-8"

比如:

基於tomcat亂碼解決方案

今天又碰到中文亂碼問題了,在web的現實開發中出現亂碼的機率還是挺大的。只要在檔案本身編碼 頁面 servlet 伺服器有乙個部分沒設定一致的encoding就可能出現,這裡做下筆記記錄解決亂碼的過錯 1.檢視頁面頭部encoding,我這裡設定了utf 8 2.編輯器設定檔案編碼為utf 8 3....

JSP亂碼解決方案

一般來說,我們現在程式設計都使用的mvc三層架構體系,也就是說接收和處理資料都是在moudel servler 中完成的,所以要解決亂碼問題,也就要在這裡進行 對於post請求,一般可以用簡單的 request.setcharacterencoding gbk 來實現 也可以用 response.s...

mysql亂碼解決方案

對於mysql資料庫的亂碼問題,有兩中情況 1.mysql資料庫編碼問題 建庫時設定 2.連線mysql資料庫的url編碼設定問題。對於第乙個問題,目前個人發現只能通過重新建庫解決,建庫的時候,選擇utf 8字符集。我試過修改現有資料庫字符集為uft 8,但是根本不起作用,插入的中文仍然亂碼 中文顯...