eclipse web项目的编码过滤器,统一设置成UTF-8

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了eclipse web项目的编码过滤器,统一设置成UTF-8相关的知识,希望对你有一定的参考价值。

开发工具:eclipse
开发项目 Web,动态
需求:编码过滤器,统一UTF-8
因为各种编码问题,求编码过滤器一个,已经新建好了,就只求代码如何编写
import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.annotation.WebFilter;
@WebFilter("/*")public class Filters implements Filter
public void destroy()
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException //此处代码不会,求代码 chain.doFilter(request, response);
public void init(FilterConfig fConfig) throws ServletException

在工具里面设置的,就不需要各位大大虾提起了,这个百度上有的是,再次声明,求编码过滤器!

Spring有这种Filter,可以直接使用:

org.springframework.web.filter.CharacterEncodingFilter


追问

大哥,给代码,给您再加50分。只要doFilterInternetal里面的那段,谢谢哈!

参考技术A 过滤器中的内容:
private static final long serialVersionUID =85757L;

private String encoding;

public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException

arg0.setCharacterEncoding(encoding);

arg1.setCharacterEncoding(encoding);

arg2.doFilter(arg0, arg1);



public void init(FilterConfig arg0) throws ServletException

encoding=arg0.getInitParameter("encoding");



web.xml文件中 添加过滤器
<filter>
<filter-name>类名</filter-name>
<filter-class>类名全路径(包括包名)</filter-class>
<init-param><!--参数 与过滤器中的encoding对应 encoding的实际值是utf-8-->
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>本回答被提问者采纳
参考技术B

项目   ---》 右键 properties  弹出对话框

追问

哎,可以改eclipse,早知道了,数据库的编码,访问网站的上帝,他们的编码怎么改?我只想要个编码过滤器,将所有请求和响应的编码都过滤成UTF-8。
大侠能理解我的意思吧!顺便,求代码!

web.xml配置编码过滤器解决中文乱码问题

为了防止前端传入的中文数据出现乱码问题,使用Spring提供的编码过滤器来统一编码。

要使用编码过滤器,只需要在web.xml中添加如下代码:

<filter>
        <filter-name>CharacterEncodingFilter</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>CharacterEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

另一个一定会配置的是ViewResolver视图解析器,将方法中所定义的View路径简化。

要使用视图解析器,只需要在springmvc-config.xml中添加如下代码:

<!-- 定义视图解析器 -->
    <bean id="viewResolver"
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <!-- 设置前缀 -->
        <property name="prefix" value="/WEB-INF/jsp/"></property>
        <!-- 设置后缀 -->
        <property name="suffix" value=".jsp"></property>
    </bean>

 

以上是关于eclipse web项目的编码过滤器,统一设置成UTF-8的主要内容,如果未能解决你的问题,请参考以下文章

ecLipse设置字符编码

eclipse设置统一编码

mysql出现乱码

eclipse创建maven项目

IDEA正确设置编码统一为UTF-8

java web 一次请求编码设置的过程