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>
分享到:
相关推荐
描述 "tomcat配好了不会中文乱码,只要把IDEA的UTF-8配好就行了" 强调了Tomcat与IDE(IntelliJ IDEA)之间的集成,特别是如何在IDEA中配置UTF-8以确保在开发和运行Web应用时,中文字符能够正确显示。这涉及到两个...
以上示例使用Spring框架提供的`CharacterEncodingFilter`过滤器来强制所有请求都使用UTF-8编码。这种方法更加灵活,可以根据具体的应用场景来定制。 #### 三、验证修改结果 修改完成后,可以通过以下几种方式来...
标题中的"SSH论坛源码 UTF-8"指的是这个压缩包包含了一个使用SSH(Struts、Spring、Hibernate)技术栈开发的论坛系统,并且源代码是用UTF-8编码的。SSH是一个常见的Java Web应用程序开发框架组合,用于构建高效、可...
本篇将深入探讨Struts如何预处理成UTF-8编码,以解决中文乱码问题。 在Web应用程序中,数据的编码和解码过程至关重要,特别是对于非ASCII字符集,如中文。UTF-8是一种广泛使用的多字节字符编码,可以表示Unicode...
这将设置SpringBoot项目的字符编码为UTF-8,解决乱码问题。 2. Maven插件配置 在pom.xml文件中添加以下配置: <groupId>org.springframework.boot <artifactId>spring-boot-maven-plugin <fork>true ...
标题提到的"freemaker生成静态文件时转换文件原编码GBK为UTF-8",这涉及到的是在使用FreeMarker生成静态文件时,如何处理从GBK编码转换到UTF-8编码的问题。 GBK是GB2312编码的扩展,包含了更多的汉字,但在处理多...
本实例将引导你入门Freemarker,解决在Eclipse环境下使用Java编译时可能出现的乱码问题,并确保使用UTF-8编码方式进行处理。 **1. Freemarker简介** Freemarker是一个基于模板的开源Java库,它与Spring MVC、Struts...
2. 本地环境改为UTF-8: 转换文件编码后,需要确保本地编辑器和IDE也设置为UTF-8编码,避免打开文件时出现乱码。通常,可以在编辑器的首选项或设置中更改默认编码为UTF-8。 3. 含有中文的JS引用: 如果JavaScript...
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> SELECT * FROM user WHERE id = #{id} ``` ...
【标题】"一款大型游戏交易网工程项目源码(经典SSH2_MySQL_ZH.UTF-8)" 提供的是一款基于SSH2框架、MySQL数据库、简体UTF-8编码的大型游戏交易平台的完整源代码。SSH2是Struts2、Hibernate和Spring的集成,是Java Web...
考虑到UTF-8编码,这些文件能正确显示各种语言的字符。 4. **框架和库**:项目可能依赖一些PHP(如Laravel、Symfony)或JSP(如Spring、Struts)框架,以及jQuery、Bootstrap等前端库,以提高开发效率和应用性能。 ...
3. **配置文件编码**:Struts的配置文件(如struts-config.xml或struts.properties)如果以非UTF-8编码保存,加载时可能会出现乱码。 4. **Servlet容器配置**:Tomcat、Jetty等Servlet容器的默认编码可能与应用需求...
为了解决这个问题,我们可以统一Java编译器和源文件编码,例如在IDEA中设置项目编码为UTF-8,并在POM.XML中配置UTF-8编码: ```xml <!-- java 源文件编码 --> <project.build.sourceEncoding>UTF-8 ...
总结起来,jsmartUploadUTF8是一个高效、易用且支持中文文件名的文件上传解决方案,它结合了SmartUpload的强大功能和对UTF-8编码的兼容性,能够帮助开发者构建健壮的Web文件上传系统。通过合理的配置和编程,可以...
SSH 下 MySQL 中文乱码问题解决...首先,在 Hibernate 的配置文件 hibernate.cfg.xml 中需要添加参数 useUnicode=true 和 characterEncoding=UTF-8,以确保 Hibernate 连接 MySQL 数据库时使用 UTF-8 编码。例如: ``` ...
2. 使用`@RequestParam`注解:在Controller方法中,通过`@RequestParam`注解接收参数时,可以设置`@RequestParam(value = "param", required = false, encoding = "UTF-8")`,明确指定编码为UTF-8。 3. 自定义拦截...
这个配置将将响应的字符编码设置为 UTF-8。 使用 Filter 来解决中文乱码问题 在上面的示例中,我们使用了 CharacterEncodingFilter 来解决中文乱码问题。这个 Filter 可以自动地将 POST 请求的字符编码设置为 UTF-...
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> ``` 现在,我们已经...