免XML的SpringMVC配置
Servlet 3.0以后,新增了一些注解,使得web.xml可以省略掉。这样配合Spring的JavaConfig就可以实现免xml的项目配置,这里简单搭建一个免XML的SpringMVC。Spring为我们提供了 org.springframework.web.WebApplicationInitializer,这个接口,可以使我们以编程方式来配置相关servlet等。
这是Spring官方文档的一部分,我们可以直接实现org.springframework.web.WebApplicationInitializer 这个接口来配置Spring的DispatcherServlet,当然Spring提供了一个功能更加强劲的实现类org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer
我们可以直接继承org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer
1 public class MyWebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer { 2 3 @Override 4 protected Class<?>[] getRootConfigClasses() { 5 return new Class[0]; 6 } 7 8 //post乱码 9 @Override 10 protected Filter[] getServletFilters() { 11 return new Filter[]{ 12 new CharacterEncodingFilter() 13 }; 14 } 15 //JavaConfig类 16 @Override 17 protected Class<?>[] getServletConfigClasses() { 18 return new Class[]{ 19 MyMvcConfig.class 20 }; 21 } 22 //拦截 23 @Override 24 protected String[] getServletMappings() { 25 return new String[]{ "/" }; 26 } 27 }
然后配置自己的JavaConfig即可
1 @Configuration 2 @EnableWebMvc 3 @ComponentScan("这里填写自己要扫描的包") 4 public class MyMvcConfig{ 5 6 }
这样一个简单的免xml配置的SpringMVC就配置好啦