跟我学习Spring Security--在线宠物商店开发(二)
admin
2023-05-31 06:22:02
0

    我们首先来一个简单Spring Security登录,首先需要搭建环境,这里我们用Spring+SpringMVC+Spring Security,数据库用Hibernate4+Oracle,关于jar包,Spring以及SpringMVC我用的是3.2版本的。

    在web.xml中我们主要是配置Spring、SpringMVC以及Spring Security的集成。



  Dog Store
   
   
    contextConfigLocation
    
    
   
   
  
    org.springframework.web.context.ContextLoaderListener
  
  
  
 
 dogstore
 org.springframework.web.servlet.DispatcherServlet
    1  
 
 
    dogstore
    *.do
  
  
  
  
    springSecurityFilterChain
    org.springframework.web.filter.DelegatingFilterProxy
  
  
    springSecurityFilterChain
    /*
  

    现在我们需要配置Spring Security的组件,在配置Spring Security的权限控制文件之前,我们来拓展一下Spring Security权限控制方法:

1、不用数据库,全部数据写在配置文件,这个也是官方文档里面的demo;

2、使用数据库,根据spring security默认实现代码设计数据库,也就是说数据库已经固定了,这种方法不灵活,而且那个数据库设计得很简陋,实用性差;

3、spring security和Acegi不同,它不能修改默认filter了,但支持插入filter,所以根据这个,我们可以插入自己的filter来灵活使用;

4、暴力手段,修改源码,前面说的修改默认filter只是修改配置文件以替换filter而已,这种是直接改了里面的源码,但是这种不符合OO设计原则,而且不实际,不可用。

现在配置dogstore-security.xml这个文件,关于命名空间配置,官方提供了两种配置方案

  
    ...  

第二种、命名空间用security开头,在配置中不需要security前缀,但是bean的配置需要用配置

  
    ...  

首先我们先按照上面第一种权限控制来做个简单的demo:dogstore-security.xml,注意自己引用的jar与命名空间版本要一致



	
		
	
	
		
			
				
			
		
		

      第一个http标签其实主要是配置拦截url用的,里边大概配置了如果你要访问某个路径,需要哪个连接权限,而http标签下边的authentication-manger标签下的标签则配置了那些用户都拥有哪些权限,目前我们先暂时按这个步骤去做,后面详细介绍。

   现在我们来完善Spring、SpringMVC所需的配置文件,上面web.xml中我们已经预留了contextConfigLocation来引入配置文件,首先创建dogstore-base.xml空文件,这是Spring配置文件,如果后面需要什么,我们再添加



 

SpringMVC的配置文件,先配置视图解析,SpringMVC配置会自动查找配置文件,Servlet的名字是()是dogstore,约定胜于配置将会在WEB-INF目录下寻找名为dogstore-servelt.xml的配置文件


	
	
	    
	   
	   
	

目前Spring、SpringMVC以及Spring Security配置文件基本用法已经配置,引入web.xml,SpringMVC自己引入配置文件。

  
  contextConfigLocation  
    
    /WEB-INF/dogstore-security.xml  
    /WEB-INF/dogstore-base.xml  
    

将上面配置的加入tomcat,启动,在没有自定义登录页面之前,SpringSecurity会自动生成登录页面,如下图,我们在web.xml下添加首页来验证拦截是否有效

 
  main.jsp
  

在WebContent下添加main.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


我已经登录进来了!


 跟我学习Spring Security--在线宠物商店开发(二)

输入错误的账号或者错误密码

 跟我学习Spring Security--在线宠物商店开发(二)

输入上面配置的guest/guest,登录成功。




相关内容

热门资讯

开局“十五五” 奋斗正当时|磁... 当人工智能进入产业应用的关键阶段,城市之间的竞争不再只是拼算力、拼模型,更拼谁能为技术提供真实可感的...
特朗普称霍尔木兹海峡协议尚未达... 当地时间8月6日,美国总统特朗普表示,关于重新开放霍尔木兹海峡的协议“尚不能说已经正式达成”,但海峡...
“智汇京西·AI赋能”——“金... 日前,由石景山园管委会区科委、中关村数智人工智能产业联盟等单位联合主办的“智汇京西·AI赋能”——“...
商业航天,龙头暴增92倍,预增... (来源:逍遥财情) 当前,我国商业航天正以惊人的“中国速度”迈入高频次、规模化组网的爆发期。 8月4...
消息称长鑫存储拒绝苹果DRAM... 【太平洋科技快讯】据中新经纬报道,8 月 5 日,韩国媒体《Digital Daily》发布消息称,...
原创 华... 华为多款新品推出,比如折叠电脑、智能手表、智能手机、旗舰平板等,生态级发布,配置从中端到顶配均有,而...
欧菲光涨1.52%,成交额10... 来源:新浪证券-红岸工作室 8月6日,欧菲光涨1.52%,成交额10.78亿元,换手率4.15%,总...
深耕一站式PCBA智造十年,诚... 随着新能源汽车、医疗设备、工业自动化产业加速发展,市场对控制器PCBA的研发精度、制造可靠性、全流程...
伊朗议会议长喊话:别再作秀了! 据美国有线电视新闻网(CNN)报道,伊朗议会议长兼首席谈判代表卡利巴夫,当地时间周四抨击美国总统特朗...
第五届钟南山青年科技创新奖推荐... 为鼓励广大青年医学科技工作者和生命科学工作者在新时代建设世界科技强国的征程中,学习钟南山院士的家国情...