一个初始化类,继承AbstractSecurityWebApplicationInitializer

public class SecurityInitializer extends AbstractSecurityWebApplicationInitializer {
    //不用重写任何内容
  	//这里实际上会自动注册一个Filter,SpringSecurity底层就是依靠N个过滤器实现的,我们之后再探讨
}

再创建一个配置类用于配置SpringSecurity:

@Configuration
@EnableWebSecurity   //开启WebSecurity相关功能
public class SecurityConfiguration {
		
}

接着在MVC配置类也就是继承AbstractAnnotationConfigDispatcherServletInitializer 的类中添加此配置文件即可:

@Override
protected Class<?>[] getRootConfigClasses() {
    return new Class[]{MainConfiguration.class, SecurityConfiguration.class};
}

这样,SpringSecurity的配置就完成了,我们再次运行项目,会发现无法进入的我们的页面中,无论我们访问哪个页面,都会进入到SpringSecurity为我们提供的一个默认登录页面。

这里如果重启时出现

Failed to register servlet with name 'dispatcher'. Check if there is another servlet registered under the same name

说明target目录中跟之前的Dispatcher重名,用Maven的Clean功能清理一下之前的编译内容即可,或者直接手动删掉文件夹。