`
wangzi6hao
  • 浏览: 213066 次
  • 性别: Icon_minigender_1
  • 来自: sdf
社区版块
存档分类
最新评论

spring2配置 utf-8解决

    博客分类:
  • SSH
阅读更多

spring2配置 utf-8解决

<filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

 查看以下源码后:

package org.springframework.web.filter;

import java.io.IOException;

import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.util.ClassUtils;


public class CharacterEncodingFilter extends OncePerRequestFilter {

    private final static boolean responseSetCharacterEncodingAvailable = ClassUtils.hasMethod(
            HttpServletResponse.class, "setCharacterEncoding", new Class[] {String.class});


    private String encoding;

    private boolean forceEncoding = false;



    public void setEncoding(String encoding) {
        this.encoding = encoding;
    }


    public void setForceEncoding(boolean forceEncoding) {
        this.forceEncoding = forceEncoding;
    }


    protected void doFilterInternal(
            HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
            throws ServletException, IOException {

        if (this.encoding != null && (this.forceEncoding || request.getCharacterEncoding() == null)) {
            request.setCharacterEncoding(this.encoding);
            if (this.forceEncoding && responseSetCharacterEncodingAvailable) {
                response.setCharacterEncoding(this.encoding);
            }
        }
        filterChain.doFilter(request, response);
    }

}

 发现原来少个配置:

<filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>forceEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
 
分享到:
评论

相关推荐

    tomcat9(9.0.68)下载资源(配置完的适用于UTF-8)

    描述 "tomcat配好了不会中文乱码,只要把IDEA的UTF-8配好就行了" 强调了Tomcat与IDE(IntelliJ IDEA)之间的集成,特别是如何在IDEA中配置UTF-8以确保在开发和运行Web应用时,中文字符能够正确显示。这涉及到两个...

    修改tomcat的编码为utf-8

    以上示例使用Spring框架提供的`CharacterEncodingFilter`过滤器来强制所有请求都使用UTF-8编码。这种方法更加灵活,可以根据具体的应用场景来定制。 #### 三、验证修改结果 修改完成后,可以通过以下几种方式来...

    SSH论坛源码 UTF-8

    标题中的"SSH论坛源码 UTF-8"指的是这个压缩包包含了一个使用SSH(Struts、Spring、Hibernate)技术栈开发的论坛系统,并且源代码是用UTF-8编码的。SSH是一个常见的Java Web应用程序开发框架组合,用于构建高效、可...

    Struts中文预处理UTF-8

    本篇将深入探讨Struts如何预处理成UTF-8编码,以解决中文乱码问题。 在Web应用程序中,数据的编码和解码过程至关重要,特别是对于非ASCII字符集,如中文。UTF-8是一种广泛使用的多字节字符编码,可以表示Unicode...

    springboot乱码问题解决方案

    这将设置SpringBoot项目的字符编码为UTF-8,解决乱码问题。 2. Maven插件配置 在pom.xml文件中添加以下配置: &lt;groupId&gt;org.springframework.boot &lt;artifactId&gt;spring-boot-maven-plugin &lt;fork&gt;true ...

    freemaker生成静态文件时转换文件原编码GBK为UTF-8

    标题提到的"freemaker生成静态文件时转换文件原编码GBK为UTF-8",这涉及到的是在使用FreeMarker生成静态文件时,如何处理从GBK编码转换到UTF-8编码的问题。 GBK是GB2312编码的扩展,包含了更多的汉字,但在处理多...

    freemarker入门实例(解决乱码eclipse/java/编码方式UTF-8)

    本实例将引导你入门Freemarker,解决在Eclipse环境下使用Java编译时可能出现的乱码问题,并确保使用UTF-8编码方式进行处理。 **1. Freemarker简介** Freemarker是一个基于模板的开源Java库,它与Spring MVC、Struts...

    Java gbk转utf-8

    2. 本地环境改为UTF-8: 转换文件编码后,需要确保本地编辑器和IDE也设置为UTF-8编码,避免打开文件时出现乱码。通常,可以在编辑器的首选项或设置中更改默认编码为UTF-8。 3. 含有中文的JS引用: 如果JavaScript...

    spring-boot-starter-mybatis-spring-boot-2.2.2.tar.gz

    &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"&gt; SELECT * FROM user WHERE id = #{id} ``` ...

    一款大型游戏交易网工程项目源码(经典SSH2_MySQL_ZH.UTF-8)

    【标题】"一款大型游戏交易网工程项目源码(经典SSH2_MySQL_ZH.UTF-8)" 提供的是一款基于SSH2框架、MySQL数据库、简体UTF-8编码的大型游戏交易平台的完整源代码。SSH2是Struts2、Hibernate和Spring的集成,是Java Web...

    基于PHP的盈盈通 JSP 网络聊天软件 UTF-8.zip

    考虑到UTF-8编码,这些文件能正确显示各种语言的字符。 4. **框架和库**:项目可能依赖一些PHP(如Laravel、Symfony)或JSP(如Spring、Struts)框架,以及jQuery、Bootstrap等前端库,以提高开发效率和应用性能。 ...

    struts之中文乱码问题

    3. **配置文件编码**:Struts的配置文件(如struts-config.xml或struts.properties)如果以非UTF-8编码保存,加载时可能会出现乱码。 4. **Servlet容器配置**:Tomcat、Jetty等Servlet容器的默认编码可能与应用需求...

    Java中文乱码浅析及解决方案

    为了解决这个问题,我们可以统一Java编译器和源文件编码,例如在IDEA中设置项目编码为UTF-8,并在POM.XML中配置UTF-8编码: ```xml &lt;!-- java 源文件编码 --&gt; &lt;project.build.sourceEncoding&gt;UTF-8 ...

    jsmartUploadUTF8上传工具

    总结起来,jsmartUploadUTF8是一个高效、易用且支持中文文件名的文件上传解决方案,它结合了SmartUpload的强大功能和对UTF-8编码的兼容性,能够帮助开发者构建健壮的Web文件上传系统。通过合理的配置和编程,可以...

    SSH下mysql中文乱码问题.docx

    SSH 下 MySQL 中文乱码问题解决...首先,在 Hibernate 的配置文件 hibernate.cfg.xml 中需要添加参数 useUnicode=true 和 characterEncoding=UTF-8,以确保 Hibernate 连接 MySQL 数据库时使用 UTF-8 编码。例如: ``` ...

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

    2. 使用`@RequestParam`注解:在Controller方法中,通过`@RequestParam`注解接收参数时,可以设置`@RequestParam(value = "param", required = false, encoding = "UTF-8")`,明确指定编码为UTF-8。 3. 自定义拦截...

    springMVC解决中文乱码

    这个配置将将响应的字符编码设置为 UTF-8。 使用 Filter 来解决中文乱码问题 在上面的示例中,我们使用了 CharacterEncodingFilter 来解决中文乱码问题。这个 Filter 可以自动地将 POST 请求的字符编码设置为 UTF-...

    SSH框架配置步骤图解(Struts2.1.6 Spring2.5.6 Hibernate3.3.1 2

    &lt;?xml version="1.0" encoding="UTF-8" ?&gt; &lt;!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"&gt; ``` 现在,我们已经...

Global site tag (gtag.js) - Google Analytics