我们明白了为什么我们要使用SS3之后,那么你应该就有兴趣看这篇文章了。因为这篇文章才是真正带你入门的开始,本文我们用一个简单的示例来看看SS3给我们带来的好处。
首先我们配置好Spring以及SpringMVC,然我们的程序能够运行起来,这样体现出SS3的AOP特性,即不影响我们原始代码的情况下增加权限功能。本文demo所使用的是maven管理所需要的jar包。如果你没有使用maven或者使用其他构建工具时请自行配置。
1. pom.xml、spring、spring-mvc、hibernate配置,由于篇幅原因请参考附件源码。
2. Spring Security对web.xml的配置
同时我们要让我们的SpringSecurity的配置在启动时就生效,我们则需要她和Spring一样,在一开始加载就将我们配置的bean加载到我们的server内存中。所以此处是关键:
3. 对applicationContext-security.xml的配置
a. 引入SpringSecurity的命名空间以及必要的xsd
b. 配置资源过滤。我们并不希望我们的Javascript, css, 图片等资源被SpringSecurity Filter拦截并检查权限,因为我们在配置SpringSecurity时,使用的是拦截所有请求,因此我们要让SpringSecurity的过滤不检查这些资源的权限。
c. 配置我们拦截到的请求URL。
d. 配置验证管理。(注:此示例中暂时不使用数据库存放用户信息,后面会一步一步的改动,让大家更加清楚如何能达到自由使用SS3)
4. 配置我们的访问页面。
a. 自定义的登录页面
b. 测试。当我们去访问URL中包含了/user/的资源时,SS3就会拦截我们的请求,然后跳转到login页面,让我们登录。当前使用配置在applicationContext-security.xml中的用户名和密码来进行登录即可。
下一章内容提要:
使用数据库存放用户信息、权限信息。结合SS3进行验证。请参考当前配置的示例,示例中已集成hibernate。