`
落地窗
  • 浏览: 438258 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用Spring的CharacterEncodingFilter应注意的问题

阅读更多
这是我的web.xml中配置:
<!-- 列表组件导出过滤器 -->
    <filter>
        <filter-name>eXtremeExport</filter-name>
        <filter-class>
            org.extremecomponents.table.filter.ExportFilter
        </filter-class>
    </filter>
    <filter-mapping>
        <filter-name>eXtremeExport</filter-name>
        <url-pattern>*.do</url-pattern>
    </filter-mapping>
    <!-- 著名 Character Encoding filter -->
    <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>
            org.springframework.web.filter.CharacterEncodingFilter
        </filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>GBK</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
看不出有什么问题,可当我插入测试数据时全是乱码.
数据库本身是没有问题的.

后来终于找到了解决的方法,原创列表组件的filter对
CharacterEncodingFilter的过滤有影响.调整一下顺序就行了.
<!-- 著名 Character Encoding filter -->
    <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>
            org.springframework.web.filter.CharacterEncodingFilter
        </filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>GBK</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <!-- 列表组件导出过滤器 -->
    <filter>
        <filter-name>eXtremeExport</filter-name>
        <filter-class>
            org.extremecomponents.table.filter.ExportFilter
        </filter-class>
    </filter>
    <filter-mapping>
        <filter-name>eXtremeExport</filter-name>
        <url-pattern>*.do</url-pattern>
    </filter-mapping>
调整后CharacterEncodingFilter表现良好,一切正常.就不会再出来
乱码的问题了.
分享到:
评论
1 楼 chruan 2016-09-23  
刚好遇到这个问题,谢谢了。

相关推荐

    用SpringSecurity保护Web的安全

    - 添加`CharacterEncodingFilter`以处理字符编码问题,确保所有输入数据正确编码为UTF-8。 配置`spring-security.xml`时,需要定义访问规则、用户信息源(可以是非数据库方式,如内存或属性文件)和登录认证逻辑。...

    Spring MVC 入门实例

    这篇文章将教你快速地上手使用 Spring 框架. 如果你手上有一本《Spring in Action》, 那么你最好从第三部分"Spring 在 Web 层的应用--建立 Web 层"开始看, 否则那将是一场恶梦! 首先, 我需要在你心里建立起 Spring...

    spring-boot 过滤器 filter

    在Spring Boot应用中,过滤器(Filter)是用于处理HTTP请求和响应的重要组件。它们允许我们在请求被实际处理...在实际开发中,应根据具体场景选择合适的Filter类型,并注意其执行顺序和生命周期管理,以实现最佳效果。

    Spring提供的CharacterEncoding和OpenSessionInView功能

    在处理Web应用时,Spring提供了一些关键特性,如`CharacterEncodingFilter`和`OpenSessionInViewFilter`,它们对于解决特定问题至关重要。 首先,让我们深入了解一下`CharacterEncodingFilter`。在Web应用中,字符...

    web.xml文件中配置(servlet, spring, filter, listenr)的加载顺序

    ### web.xml文件中配置(servlet, spring, filter, listener)的加载顺序 在Java Web应用开发中,...此外,还应注意`filter-mapping`的顺序对Filter执行的影响,以及如何通过配置Spring Listener来初始化Spring Bean。

    第30讲--Spring提供的CharacterEncoding和OpenSessionInView功能

    因此,在实际应用中,应结合具体需求谨慎使用,并考虑使用更现代的解决方案,如Spring Data JPA的Repository Rest Repositories,它们提供了更高效的透明数据访问。 总结一下,CharacterEncodingFilter和...

    Struts+Hibernate+Spring的整合方法

    7. **解决中文乱码问题**:Spring提供的CharacterEncodingFilter可以方便地配置字符编码,确保请求和响应的编码统一为UTF-8。 8. **处理Hibernate延迟加载**:使用`OpenSessionInViewFilter`过滤器,确保Session在...

    spring3 MVC GET提交方式乱码解决

    解决这个问题的关键在于配置Spring MVC的字符编码过滤器(CharacterEncodingFilter)。 1. **配置CharacterEncodingFilter**: 在Spring的`web.xml`配置文件中,我们需要添加`CharacterEncodingFilter`,并设置其...

    如何在Spring中解决中文乱码的方法.doc

    Spring提供了`CharacterEncodingFilter`来解决这个问题,它可以自动设置请求的字符集。 **配置示例** ```xml &lt;filter-name&gt;SetCharacterEncoding &lt;filter-class&gt;org.springframework.web.filter....

    struts2.1+spring3.0+hibernate3.3整合

    - 使用Spring的`CharacterEncodingFilter`来统一处理字符编码问题,例如设置为`UTF-8`。 #### 四、为项目添加Hibernate支持 1. **依赖引入**:确保项目中包含了Hibernate的核心库以及其他必要的扩展库。对于...

    struts_hibernate_spring集成

    - **字符编码过滤器**:`CharacterEncodingFilter`用于解决客户端与服务器之间的字符编码不一致问题,这里设定为GBK,确保数据传输的正确性。 - **OpenSessionInViewFilter**:此过滤器确保在视图渲染过程中保持一...

    WEB高级编程实验报告之Spring-MVC.doc

    &lt;filter-class&gt;org.springframework.web.filter.CharacterEncodingFilter &lt;param-name&gt;encoding &lt;param-value&gt;UTF-8 &lt;param-name&gt;forceEncoding &lt;param-value&gt;true &lt;filter-name&gt;encodingFilter ...

    spring2.5.4+hibernate3.2.6+struts2+jbpm3.2.2收藏

    - **安全**:考虑使用Spring Security或Struts2的安全插件来实现认证和授权。 整合这些框架后,开发人员可以利用它们的优势,如Spring的依赖注入和事务管理,Hibernate的数据持久化,Struts2的MVC结构,以及jbpm的...

    SpringMVC解决GET请求时中文乱码的问题.rar

    在Spring MVC框架中,处理HTTP GET请求时遇到中文乱码问题是一个常见的开发难题。这个问题主要源于请求参数在URL中编码时使用的是UTF-8以外...在实际开发中,我们应养成良好的编码习惯,减少因字符编码问题引发的困扰。

    ssh中struts2,spring,各配置说明

    【SSH】是一个流行的Java开发框架组合,由Struts2、Spring和Hibernate三个组件构成,用于构建企业级的Web...同时,为了简化配置,还可以使用Spring Boot等现代框架,它们提供了自动化配置,减少了手动配置的复杂性。

    SSH整合配置注意点

    - **问题描述**:在使用Spring框架时,如果不正确地管理Bean的生命周期和注入方式,很容易出现`NullPointerException`等异常。例如,直接在代码中创建DAO对象并调用其方法,而不是通过Spring容器进行注入。 - **...

    Spring2.5.3+Hibernate3.2+Struts2.0.11整合

    需要注意的是,整合过程中可能会遇到的问题,如依赖注入的配置错误、数据库连接问题、Struts2动作配置错误等。解决这些问题通常需要仔细检查配置文件和代码,确保符合各框架的规范。 在本文所描述的示例中,开发者...

    struts1+spring+hibernate整合示例

    &lt;filter-class&gt;org.springframework.web.filter.CharacterEncodingFilter &lt;param-name&gt;encoding &lt;param-value&gt;utf-8 &lt;param-name&gt;forceEncoding &lt;param-value&gt;true ``` 这里配置了一个字符编码过滤器...

    Spring MVC面试宝典1.pdf

    因此,需要注意解决线程安全问题。主要通过以下几种方式: - **非线程安全的成员变量**:确保控制器中不包含任何实例级别的成员变量。如果必须使用成员变量,则应该标记为`final`或使用线程安全的数据结构。 - **...

Global site tag (gtag.js) - Google Analytics