你还不了解基于session的授权认证吗? (3)

本案例采用Servlet3.0无web.xml方式,在config包下定义WebConfig.java,它对应于DispatcherServlet配置。

你还不了解基于session的授权认证吗?

加载spring容器

在init包下定义Spring容器初始化类SpringApplicationInitializer,此类实现WebApplicationInitializer接口, Spring容器启动时加载WebApplicationInitializer接口的所有实现类。

你还不了解基于session的授权认证吗?

SpringApplicationInitializer相当于web.xml,使用了servlet3.0开发则不需要再定义web.xml, ApplicationConfig.class对应以下配置的application-context.xml,WebConfig.class对应以下配置的spring- mvc.xml,web.xml的内容参考:

你还不了解基于session的授权认证吗?

实现认证功能 认证页面

在webapp/WEB-INF/views下定义认证页面login.jsp,本案例只是测试认证流程,页面没有添加css样式,页面实 现可填入用户名,密码,触发登录将提交表单信息至/login,内容如下:

你还不了解基于session的授权认证吗?

在WebConfig中新增如下配置,将/直接导向login.jsp页面:

你还不了解基于session的授权认证吗?

启动项目,访问/路径地址,进行测试

认证接口

用户进入认证页面,输入账号和密码,点击登录,请求/login进行身份认证。
(1)定义认证接口,此接口用于对传来的用户名、密码校验,若成功则返回该用户的详细信息,否则抛出错误异常:

你还不了解基于session的授权认证吗?


你还不了解基于session的授权认证吗?


你还不了解基于session的授权认证吗?

(2)认证实现类,根据用户名查找用户信息,并校验密码,这里模拟了两个用户:

你还不了解基于session的授权认证吗?


你还不了解基于session的授权认证吗?

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyswgz.html