عندما يواجه أحد الزملاء مشكلات ترميز ، يريد إنشاء مرشح ترميز حرف يحل الموقع بأكمله. فئة المرشح والتكوين هي كما يلي:
فئة المرشح:
<span style = "font-size: 12px ؛"> package com.chaoxing.newspaper.web.filter ؛ import java.ioexception ؛ import java.lang.reflect.invocationhandler ؛ import java.lang.reflect.method javax.servlet.filterchain ؛ استيراد javax.servlet.filterconfig ؛ استيراد javax.servlet.servletexception ؛ استيراد javax.servlet.servletrequest ؛ استيراد javax.servlet.servletrespons javax.servlet.http.httpservletresponse ؛ الطبقة العامة characterencodingfilter firements filter {public void dofilter (servletrequest req ، servletResponse res ، filterchain chain) يلقي iOexception ، servleTexception {system.out.println ( طلب httpservletrequest النهائي = (httpservletrequest) req ؛ httpservletresponse استجابة = (httpservletresponse) res ؛ // Resolute the request request.setcharacterencoding ("UTF-8") ؛ استجابة. setcharacterencoding ("UTF-8") ؛ استجابة. chain.dofilter ((servletRequest) proxy.newproxyinstance (this.getClass (). getClassLoader () ، request.getClass (). if (methodname.equals ("getParameter") {// request.getParameter للحصول على قيمة سلسلة = (سلسلة). System.out.println (|||| ") res) ؛} public void init (filterConfig fconfig) يلقي servletexception {system.out.println ("تهيئة مرشح") ؛}@outridepublic void dorder () {system.out.println ("Filter Complete") ؛}} </span>تكوين المرشح:
<span style = "font-size: 12px ؛"> <!-حل مرشحات مشوهة على الموقع بأكمله-> <filter> <filter-name> nAffeencoding </filter-name> <lived-class> com.xxx.web.filter.characteringfilter </filter-class> </filter> <Url-pattern>/*</url-pattern> </filter-mapping> </span>
ومع ذلك ، عندما يقدم النموذج الأمامي ، يتم الحصول على الطريقة ، لا يزال ما تحصل عليه مشوهًا.
في البداية ، كنت مرتبكًا بشأن ما إذا كان المرشح قد كتب بشكل غير صحيح وما إذا كانت مجموعة الترميز قد كتبت بشكل غير صحيح. ومع ذلك ، بعد الاختبار ، لم يكن هناك شيء خاطئ. كان المرشح يعمل بشكل طبيعي.
أخيرًا ، change value.getByte ("ISO-8859-1" ، "UTF-8") إلى value.getByte ("UTF-8" ، "UTF-8") واحصل على القيمة في الخلفية ، التي لم تعد مشوهة. أخيرًا ، ذهب بايدو إلى
يقال إن مجموعة الترميز الافتراضية لـ Tomcat8 هي UTF-8 ، ومجموعة الترميز الافتراضية لـ Tomcat8 قبل ISO-8859-1 ، وقد أدركت فجأة ...
ملخص: مجموعة الترميز الافتراضية قبل TOMCAT7 وإصدارها هي ISO-8859-1 ، ومجموعة الأحرف الافتراضية من TomCat8 هي بالفعل UTF-8 ، لذلك لم يعد يحتاج إلى نقل نتيجة طلب.
إن الحل لمشكلة ترميز حرف تصفية التصفية غير صالح يعتمد على tomcat8 هو المحتوى الكامل المشترك من قبل المحرر. آمل أن يعطيك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.