這篇文章主要為大家詳細介紹了java中Filter過濾器解決中文亂碼辦法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
內丘ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!
java中Filter過濾器處理中文亂碼的方法
注意問題:在學習用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 { //獲取初始化參數(shù) encoding=filterConfig.getInitParameter("encoding"); } public void destroy() { // TODO Auto-generated method stub encoding=null; } }
web.xml
CharactorFilter cn.com.Filter.CharactorFilter encoding utf-8 CharactorFilter /*
關于java中Filter過濾器解決中文亂碼辦法就分享到這里了,當然并不止以上和大家分析的辦法,不過小編可以保證其準確性是絕對沒問題的。希望以上內容可以對大家有一定的參考價值,可以學以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。