今天小編給大家分享的是Filter過濾器處理中文亂碼的方法介紹,很多人都不太了解,今天小編為了讓大家更加了解Filter過濾器是如何處理中文亂碼的,所以給大家總結了以下內容,一起往下看吧。一定會有所收獲的哦。
創(chuàng)新互聯(lián)建站長期為上千多家客戶提供的網站建設服務,團隊從業(yè)經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網生態(tài)環(huán)境。為五華企業(yè)提供專業(yè)的成都網站設計、做網站,五華網站改版等技術服務。擁有十多年豐富建站經驗和眾多成功案例,為您定制開發(fā)。注意問題:在學習用selvert的過濾器filter處理中文亂碼時,在filter配置初始化時用了utf-8處理中文亂碼,而在提交的jsp頁面中卻用了gbk。雖然兩種都可以出來中文亂碼,但是卻造成了處理亂碼的格式不一致。所以編譯出錯。
解決方法:所有地方都用utf-8或gbk
//過濾器類 CharactorFilter.jsp package cn.com.Filter; import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; public class CharactorFilter implements Filter { //繼承Filter類 //字符編碼 String encoding=null; public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { if(encoding!=null){ //設置request字符編碼 request.setCharacterEncoding(encoding); //設置response字符編碼 response.setContentType("text/html;charset="+encoding); } //傳遞給下一個過濾器 chain.doFilter(request, response); } public void init(FilterConfig filterConfig) throws ServletException { //獲取初始化參數 encoding=filterConfig.getInitParameter("encoding"); } public void destroy() { // TODO Auto-generated method stub encoding=null; } }
web.xml
<filter> <!--注意這里是filter,不要配置成servlet--> <filter-name>CharactorFilter</filter-name> <!--過濾器名稱--> <filter-class>cn.com.Filter.CharactorFilter</filter-class> <!--過濾器的完整類名--> <init-param> <!--初始化參數--> <param-name>encoding</param-name> <!--參數名稱--> <param-value>utf-8</param-value> <!--參數值--> </init-param> </filter> <filter-mapping> <!--過濾器映射--> <filter-name>CharactorFilter</filter-name><!--過濾器名稱--> <url-pattern>/*</url-pattern><!--URL映射,給所有頁面處理亂碼--> </filter-mapping>
以上就是Filter過濾器處理中文亂碼的方法 的簡略介紹,當然詳細使用上面的不同還得要大家自己使用過才領會。如果想了解更多,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道哦!
本文名稱:Filter過濾器處理中文亂碼的方法介紹-創(chuàng)新互聯(lián)
文章地址:http://muchs.cn/article16/ceoidg.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供虛擬主機、電子商務、企業(yè)建站、軟件開發(fā)、ChatGPT、手機網站建設
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)