09 2018 档案
摘要:在学习本篇之前,最好对java8新特性有一定的了解。可以参考:Java8新特性--流(Stream) 场景:有一个实体的List集合,需要根据实体中的某个字段对List去重 要想去重,可以考虑使用TreeSet。先来看看TreeSet的用法: 从上面可以看到TreeSet可以根据实体中的某个字段(这
阅读全文
摘要:在做项目的过程中,遇到一个场景:在审批流中,如果上级领导不审批,则在10分钟后自动审批。也就是要做一个任务在多长时间后执行的效果 在不断的摸索中,想到了使用线程池,发现有个ScheduledExecutorService可以实现,现将实现过程记录下来 这里设置的是10秒钟之后执行。看下执行效果: 该
阅读全文
摘要:BloomFilter 简介 当一个元素被加入集合时,通过K个散列函数将这个元素映射成一个位数组中的K个点,把它们置为1。检索时,我们只要看看这些点是不是都是1就(大约)知道集合中有没有它了:如果这些点有任何一个0,则被检元素一定不在;如果都是1,则被检元素很可能在。 优点:相比于其它的数据结构,布
阅读全文
摘要:学习本章之前,可以先了解下上篇 Spring Security基本配置。 本篇主要讲述Spring Security基于表单,自定义用户认证配置(上篇中的配置,本篇将不再阐述)。一共分为三步: 1、处理用户信息获取 2、处理用户校验 3、处理密码加密解密 在配置之前,先熟悉下两个接口: UserDe
阅读全文
摘要:本篇主要讲述以下几点: 1、AuthenticationManager、ProviderManager和AuthenticationProvider三者之间的关系 2、以UsernamePasswordAuthenticationFilter为例,如何使用AuthenticationProvider
阅读全文
摘要:Spring Security 是一个功能强大且可高度自定义的身份验证和访问控制框架。 它是保护基于Spring的应用程序的事实上的标准。Spring Security 是一个专注于为Java应用程序提供身份验证和授权的框架。 与所有Spring项目一样,Spring Security的真正强大之处
阅读全文
摘要:上篇 Spring Security基本配置已讲述了Spring Security最简单的配置,本篇将开始分析其基本原理 在上篇中可以看到,在访问 http://localhost:18081/user 时,直接跳转到登录页。那Security是怎么做的呢?本篇主要讲述跳转到登录页前的处理 首先来看
阅读全文