Мусорный код является относительно распространенной проблемой в J2EE. Если вы столкнетесь с одной или двумя проблемами, вы можете использовать новую строку (request.getParameter (xxx) .getbytes ("iso-8859-1"), "UTF-8"), чтобы решить его. В случае многих случаев лучше всего использовать фильтр.
На фильтры - класс и web.xml только две вещи для фильтров - класс и web.xml
1. Размещение на web.xml заключается в следующем:
<fileter> <!-Имя класса-> <Filter-name> setCarSetEncodingFilter </filter-name> <!-PATH класса-> <Filter-class> setCharacter </filter-class> <init-param> <param-name> кодирование </param-name> <param-value> utf-8 </param-value> </init-sit-sparam> <FilTater> <Famy-value> utf-8 </param-Value> <Filter-name> setCarSetEncodingFilter </filter-name> <!-Установите все файлы для перехвата, когда они встречаются с фильтрами-> <url-pattern>/*</url-pattern> </filter-mapping> </fileter>
2. Категория фильтра
импортировать java.io.ioexception; Импорт javax.servlet.filter; Импорт javax.servlet.filterchain; Импорт javax.servlet.filterConfig; Импорт javax.servlet.servletexception; Импорт javax.servlet.servletrequest; Импорт javax.servlet.servletresponse; открытый класс SetCharacter реализует фильтр {защищенная строка Encoding = null; Защищенный FilterConfig FilterConfig = null; Защищенное логическое игнорирование = true; public void init (FilterConfig arg0) бросает ServletException {this.encoding = arg0.getinitParameter ("Кодирование"); String value = arg0.getinitParameter ("imnore"); if (value == null) {this.ignore = true; } else if (value.equalsignorecase ("true")) {this.ignore = true; }} public void doFilter (ServletRequest arg0, servletresponse arg1, filterchain arg2) бросает ioException, servletexception {if (игнорировать || (arg0.getcharacterencoding () == null)) {string incoding = selectencoding (arg0); if (кодирование! = null) arg0.setcharacterencoding (кодирование); } arg2.dofilter (arg0, arg1); } частная строка Selectencoding (ServletRequest arg0) {return (this.encoding); } public void destry () {this.encoding = null; this.filterConfig = null; }} В файле web.xml следующий синтаксис используется для определения отображения:
1. Те, которые начинаются с «/» и заканчиваются «/*», используются для картирования пути.
2. Префикс "*." начинается с расширенного картирования.
3. Используйте "/" для определения картирования сервлета по умолчанию.
4. Остальные используются для определения подробных сопоставлений. Например: /aa/bb/cc.action
Вышесказанное - идея решения проблемы искаженного кода Java J2EE. Я поделюсь этим с вами. Я надеюсь, что вы сможете плавно решить подобные проблемы, когда их встречают.