zoukankan      html  css  js  c++  java
  • 学习笔记_第一个strut程序_之中文乱码,过滤器解决方案及过程总结

    1、  第一次碰到加过滤器的过程,就是在学习struct1的时候,中文乱码

    几个需要注意的关键字

    2、什么叫package

       所谓package就是打包的意思,就是说以下程序都是处于这个包内,所以一开始你看见src下拉菜单下面都是一些自己建的就是为了分开结构的作用

    3、  建好了,就可以在包的下面建子文件,可以是class类文件,也可以是各种jsp,servlet文件。

    4、  任何servlet文件或者显示界面文件都要在web.xml文件中进行配置,才能加载进去,而且是自动加载

    5、  写代码的时候对于提醒的地方,可以使用他的建议,比如写Filer的时候书上没给import.Filter导包,导致程序无法进行,这时才发现压根就没有这些头文件,所以要适当的加上这些文件。

    下面列下Filer中文乱码步骤

    1、  建立一个Package

    2、  在Package下面建一个类文件,就是书上的那个类(注意书上的没加头文件

    3、  Web.xml中在中间加上几行配置代码就可以了(注意是配置文件中间,不是直接在</web-app>后面加)

    类CharacterEncodingFilter:
     1 package com.helloweenvsfei.filter;
     2 
     3 import java.io.IOException;
     4 import javax.servlet.Filter;
     5 import javax.servlet.FilterChain;
     6 import javax.servlet.FilterConfig;
     7 import javax.servlet.ServletException;
     8 import javax.servlet.ServletRequest;
     9 import javax.servlet.ServletResponse;
    10 
    11 public class CharacterEncodingFilter implements Filter {
    12 
    13     private String characterEncoding;
    14     private boolean enabled;
    15 
    16 
    17     public void init(FilterConfig config) throws ServletException {
    18 
    19         characterEncoding = config.getInitParameter("characterEncoding");
    20 
    21         enabled = "true".equalsIgnoreCase(characterEncoding.trim())
    22                 || "1".equalsIgnoreCase(characterEncoding.trim());
    23     }
    24 
    25     
    26     public void doFilter(ServletRequest request, ServletResponse response,
    27             FilterChain chain) throws IOException, ServletException {
    28 
    29         if (enabled || characterEncoding != null) {
    30             request.setCharacterEncoding(characterEncoding);
    31             response.setCharacterEncoding(characterEncoding);
    32         }
    33 
    34         chain.doFilter(request, response);
    35     }
    36     
    37     public void destroy() {
    38         characterEncoding = null;
    39     }
    40 }
    web.xml添加进去 
    1 <filter>
     2         <filter-name>characterEncodingFilter</filter-name>
     3         <filter-class>
     4             com.helloweenvsfei.filter.CharacterEncodingFilter
     5         </filter-class>
     6         <init-param>
     7             <param-name>characterEncoding</param-name>
     8             <param-value>UTF-8</param-value>
     9         </init-param>
    10         <init-param>
    11             <param-name>enable</param-name>
    12             <param-value>true</param-value>
    13         </init-param>
    14     </filter>
    15     
    16     <filter-mapping>
    17         <filter-name>characterEncodingFilter</filter-name>
    18         <url-pattern>/*</url-pattern>
    19     </filter-mapping>

    
    
    每天都做更好的自己,不纠结于输赢成败
  • 相关阅读:
    虚拟机磁盘和OSNetworkManagement
    虚拟化的设计考量
    魔獸世界台服身份證ID生成器
    完美的Windows Server 2008 R2 SP1 模板
    Windows 脚本主机概述
    创建动态链接库的方法简介
    iPad3越狱方法
    关于用netsh.exe配置系统防火及网络
    金蝶客户端多用户远程桌面解决方案
    poj 1459 最大流(EK实现)
  • 原文地址:https://www.cnblogs.com/snowwhite/p/4639224.html
Copyright © 2011-2022 走看看