关于springBoot初试tomcat容器认证之表单验证
一.什么是SpringBoot
Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。大大减少了程序员在Spring或者SpringMvc中配置所花费的大量时间,不需要在去考虑各种xml文件的配置,简单、快速、方便!使用 Spring Boot 来开发项目只需要非常少的几个配置就可以搭建起来一个 Web 项目,并且利用 IDEA 可以自动生成生成
二.搭建SpringBoot项目
用IDEA创建springBoot项目非常迅速,点击NewProject 点击Spring Initializr,填写好项目名,如下:
点击Next,项目配置中选择好web,继续点击知道finish,如下:
删除多余文件,清理项目结构:
最后添加一些配置,页面等,如图:
添加一个Controller,写一个方法,因为springBoot内置tomcat ,所以现在可以直接启动springBoot 的唯一项目入口去访问项目,默认端口8080:
三.通过本地tomcat来访问项目
1.首选为了避免冲突,去除springBoot包含的tomcat:
2.主函数入口要继承SpringBootServletInitializer类并重写configure方法:
如此,一个简单的springBoot框架搭建完成!
四.tomcat容器认证--表单验证
刚好新入职的公司登陆页面获得权限使用的是tomcat容器认证--表单验证,客户正好也需要配置一套一模一样的认证方式,特此收集资料验证学习下!
当web.xml文件中的auth-method元素设置为FORM时,表明应用使用的是表单验证。当用户请求Web应用程序受保护的资源时,表单验证会跳转至配置的登录页面。当登录失败时,还需要一个验证失败的页面,还是上面的例子,看配置:
特别注意的是登录页面name和password的名称和属性是写死的,如下图:
注意:这里form的action="j_security_check",账号的name="j_username"和密码的name="j_password"都是不可变的,否则配置的验证规则不起作用。一般密码账户在tomcat配置文件中tomcat-users.xml中使用明文保存密码,本公司应用的一个接口过滤类来进行判断,此处不再过多描述。
在pom.xml中引入前端依赖和servlet依赖,启动项目,访问登录页面,输入账户密码,访问成功!
将公司项目和该项目放入同一个tomcat中运行,本项目登录后成功取得权限!至此,明天可以给客户再去部署!