首頁  >  文章  >  Java  >  java如何解決web項目上傳出現亂碼問題

java如何解決web項目上傳出現亂碼問題

王林
王林原創
2019-11-28 11:00:462771瀏覽

java如何解決web項目上傳出現亂碼問題

在一般的web專案中,上傳檔案和下載檔案很常見。但是當上傳的檔案名稱包含中文時,有時會出現亂碼問題。要解決這個問題,只需要統一的設定編碼集就可以,這個可以透過Filter來實現。

線上java影片教學推薦:java線上影片

下面是寫的Filter類,如下:

package com.newview.bysj.filter;

import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;

public class EncodingFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) 
    throws IOException, ServletException {
        HttpServletRequest httpServletRequest = (HttpServletRequest) servletRequest;
        //设置请求的字符集
        httpServletRequest.setCharacterEncoding("UTF-8");
        //将请求放行到目的地址
        filterChain.doFilter(servletRequest, servletResponse);
    }

    @Override
    public void destroy() {
    }
}

要讓該Filter類別起作用,還需要在web.xml中進行配置,具體的配置如下:

<!--定义Filter-->
    <filter>
        <display-name>EncodingFilter</display-name>
        <!--Filter的名字-->
        <filter-name>EncodingFilter</filter-name>
        <!--Filter的实现类-->
        <filter-class>com.newview.bysj.filter.EncodingFilter</filter-class>
    </filter>
    <!--定义Filter拦截的url-->
    <filter-mapping>
        <filter-name>EncodingFilter</filter-name>
        <!--Filter拦截的url-->
        <url-pattern>*.html</url-pattern>
    </filter-mapping>

更多相關文章教學推薦:java開發入門
##

以上是java如何解決web項目上傳出現亂碼問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn