自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 前后端分离,Excel导出实现

本篇博客主要记录一下,springBoot + vue前后端分离的项目,如何实现Excel导出功能,项目代码可以参考之前的一篇博文:springBoot+shiro+vue的学生管理系统(二、总体功能及登录功能)1.添加POI依赖: <!-- excel导出需要的依赖POI--> <dependency> ...

2020-04-24 23:11:09 8840 14

原创 LeetCode 771 宝石与石头

给定字符串J代表石头中宝石的类型,和字符串S代表你拥有的石头。S中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。J中的字母不重复,J和S中的所有字符都是字母。字母区分大小写,因此"a"和"A"是不同类型的石头。示例 1:输入: J = "aA", S = "aAAbbbb"输出: 3示例 2:输入: J = "z", S = "ZZ"...

2020-04-24 15:27:08 159

原创 在排序数组中查找数字(Java实现)

题目:统计一个数字在排序数组中出现的次数。注意,这里指的是升序数组。例如:2,4,6,6,7,25如果查找目标是 6,那么就应该返回2,因为6出现了2次如果查找目标是9,那么就返回0,表示没有出现。因为数组是有序的,而且是升序,那么很容易就想到了二分查找法来解决,但是,正常的二分查找,只是找到了中间的一个,无法确定有多少个,因此有必要对其进行改进。思路:(1)找到目标第一次出...

2020-04-23 09:48:51 914

原创 关于nvl(sum())与sum(nvl())使用注意问题

在oracle数据库中,nvl(查找的值,默认值)和sum(),常常用来统计数据。但是,谁在里面,谁在外面,却是有区别的。(1)当存在null值时,sum()返回空,但是nvl,可以指定默认值,这样就可以避免null带来的不利影响(2)当没有匹配数据时,也就是一行数据的都没有,sum()同样返回空综合考虑之后,个人觉得,里外套一层nvl,应该是没有问题的了,例如下面这样子:sel...

2020-04-22 15:57:47 5986

原创 springSecurity实现基于资源的访问控制

通过自定义springSecurity的授权逻辑,参考上篇博客 :springSecurity授权简单分析 ,你会发现它的使用场景是 基于角色的访问控制,网上很多文章写的也是基于角色的权限控制。但是,我很觉得很诧异,为什么很少有人思考 基于资源的访问控制?毕竟,在shiro中是可以实现的。为什么要思考基于资源的访问控制? 我的出发点是,即使是同样的角色,也可以拥有不用的权限,可以动态...

2020-04-17 21:33:37 2520

原创 springSecurity授权简单分析

弄完了认证流程,当然要看看授权是怎样进行的了。这里,不会把每一步的代码都贴出来,完整的代码,已经放到了GitHub:https://github.com/qiuxinfa/springSecurity-study当访问系统的某个接口时,比如http://localhost:8080/admin/users,那么会先来到FilterSecurityInterceptor的doFilter方...

2020-04-16 22:26:03 720

原创 springSecurity表单登录认证流程分析

在上一篇博客springSecurity自定义认证逻辑 中,通过实现UserDetailsService接口自定义了认证逻辑。现在简单分析一下,它的认证流程是怎样的,个人理解,有错误的地方恳请指出。假设启动系统后,发出一个请求:http://localhost:8080/user/me(1)RememberMeAuthenticationFilter尝试通过cookie自动登...

2020-04-15 22:08:08 701

原创 springSecurity自定义认证逻辑

在springSecurity入门demo 中,用户信息是放在内存中的,而在真实的项目中,肯定是不会是这样的,一般是都是放在数据库中存储的。示例代码在GitHub中:https://github.com/qiuxinfa/springSecurity-study 。实现如下功能:(1)自定义用户信息的获取(2)自定义认证成功以及失败后的回调(3)实现记住我的功能...

2020-04-14 22:58:06 705

原创 springSecurity入门demo

与shiro一样,springSecurity也是一个安全框架,核心也是认证和授权,本篇博客将使用springBoot做一个springSecurity的入门demo,完整代码已放到了GitHub:https://github.com/qiuxinfa/springSecurity-study 实现如下功能:(1)自定义基于内存的用户名和密码(2)自定义表单登录1.新建maven工...

2020-04-14 21:44:18 290

原创 springSecurity报错:Cannot pass a null GrantedAuthority collection

Cannot pass a null GrantedAuthority collection,意思是不能传递一个空的已授权的集合,这是因为在配置类中没有配置角色,也就是没有给用户授予权限,它的权限集合是空的: @Override protected void configure(AuthenticationManagerBuilder auth) throws E...

2020-04-11 08:32:49 4162 1

原创 shiro授权流程分析

上一篇博客,写了shiro认证流程分析 ,shiro主要功能是认证和授权,接下来,看看授权是如何进行的,既然要授权,当然会执行我们自定义的授权方法,所以在授权方法打个断点看看情况,当访问需要角色或者权限的接口时,就会来到授权方法(这里暂时不考虑缓存的因素,可以看做是第一次请求):我们看一下方法调用栈: 可以看到控制器AdminController是C...

2020-04-05 14:00:38 276

原创 shiro认证流程分析

在上一篇博文springboot整合shiro入门 中,简单介绍了如何使用shiro进行认证和授权,下面通过debug的方式(示例代码还是上一篇博客使用的代码),分析一下shiro是如何进行认证的: 首先,回顾一下,处理登录的方法: @PostMapping("/doLogin") @ResponseBody public String ...

2020-04-05 12:55:21 196

原创 springboot整合shiro入门

shiro作为安全框架,使用还是比较多,而且相对来说,比较容易上手。下面将使用springboot来整合shiro,实现的功能如下:(1)实现访问控制,未登录时,只能访问登录接口(2)实现角色和权限的访问控制示例代码,已放在了GitHub上:https://github.com/qiuxinfa/shiro-study先看下目录结构:1.maven依赖: ...

2020-04-04 22:02:22 134

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除