使用javaconfig實現編碼過濾器功能, web.xml用javaconfig方式的實現

package com.xiaoxia;

import javax.servlet.FilterRegistration.Dynamic;
import javax.servlet.ServletContext;

import org.springframework.web.filter.CharacterEncodingFilter;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;

public class MyWebApplicationInitializer  extends AbstractAnnotationConfigDispatcherServletInitializer{
    //根容器
    @Override
    protected Class<?>[] getRootConfigClasses() {
        // TODO Auto-generated method stub
        return new Class<?>[] { RootConfig.class };//RootConfig.class配置類,代替applicationContext.xml
    }
    //SpringMVC容器
    @Override
    protected Class<?>[] getServletConfigClasses() {
        // TODO Auto-generated method stub
        return new Class<?>[] { WebConfig.class };//WebConfig.class配置類,代替mvc.xml
    }
    
    @Override
    protected String[] getServletMappings() {
        // TODO Auto-generated method stub
        return new String[] {"/"};
    }
    /**
    *通過監聽的方式添加編碼過濾器
    */
    @Override
    protected void registerContextLoaderListener(ServletContext servletContext) {
        // TODO Auto-generated method stub
        Dynamic encodingFilterLister = servletContext.addFilter("encodingFilter", CharacterEncodingFilter.class);
        encodingFilterLister.setInitParameter("encoding", "UTF-8");

        encodingFilterLister.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST), true, "/*");
    }

}


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章