自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 【Shiro】5.整合Redis实现缓存

在前后端实际开发中,我们会大量使用注解来控制权限。在每一次执行认证或授权的操作时,Shiro都会去DB中查询身份或者权限信息。已知,身份信息和权限信息是不会经常变动的,且十分繁杂。如果同时有很多用户对系统做操作,每一次操作Shiro都需要去DB中查询身份或权限,无疑增加了数据库的压力,耗费了大量的计算资源。为了避免上述问题,我们在设计身份和权限时,都会添加缓存。所谓缓存,就是如果系统对该用户已经认证或授权过一次,就把该用户的身份信息或权限信息给缓存起来,当改用户再次做认证或者授权时,Shiro直接去

2022-01-18 13:36:44 1698

转载 【Shiro】4.Spring Boot整合Shiro

整合思路ShiroFilter会拦截所有请求,Shrio会判断哪些请求需要做认证和授权,哪些不需要做。如果请求中访问的是系统的公共资源,则不需要进行认证和授权的操作,ShiroFilter直接放行即可。如果请求中访问的是系统的受限资源,若第一次访问需要做认证,认证成功后,后续的访问进行授权。ShiroFilter依赖SecurityManager来完成认证和授权的具体操作,同时SecurityManager也依赖Realm来获取认证和授权的相应数据。公共资源不需要认证和授权,任何用户都能访

2022-01-18 11:05:08 310

原创 Java 居民身份证号校验工具类

import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.HashMap;import java.util.Map;/** * Description: * * @date 2021/12/30 */public class IDCardValid { /** * 身份证号码中的出生日期的格式 */ priva.

2021-12-30 15:47:25 343

原创 MySQL中timestamp和datetime的区别

在MySQL中,时间类型是经常用到的类型,对于常用的datetime和timestamp类型,建表时应该如何选择呢,它们又有什么区别?下面一起来看看。一、MySQL中如何表示当前其实,表达方式还是蛮多的,汇总如下:CURRENT_TIMESTAMPCURRENT_TIMESTAMP()NOW()LOCALTIMELOCALTIME()LOCALTIMESTAMPLOCALTIMESTAMP()二、关于TIMESTAMP和DATETIME的比较...

2021-12-27 10:46:49 359

原创 fail-fast 快速失败机制

1、什么是 fail-fast维基百科中关于fail-fast的解释:在系统设计中,快速失效系统一种可以立即报告任何可能表明故障的情况的系统。快速失效系统通常设计用于停止正常操作,而不是试图继续可能存在缺陷的过程。这种设计通常会在操作中的多个点检查系统的状态,因此可以及早检测到任何故障。快速失败模块的职责是检测错误,然后让系统的下一个最高级别处理错误。其实,这是一种理念,fail-fast就是在做系统设计的时候先考虑异常情况,一旦发生异常,直接停止并上报。举一个最简单的fail-fast

2021-12-22 11:21:15 2458

转载 【Shiro】3. Shiro授权流程

授权授权,即访问控制,控制谁能访问哪些资源。主体进行身份认证后需要分配权限方可访问系统的资源,对于某些资源没有权限是无法访问的。授权的关键对象授权可简单理解为Who对What / Which进行How操作。Who:主体(Subject),主体需要访问系统中的资源。 What / Which:资源(Resource),如系统菜单、页面、按钮、类方法、系统商品信息等。资源包括资源类型和资源实例,比如商品信息为资源类型,类型为Type01的商品为资源实例,编号为001的商品信息也属于资源实例。

2021-12-20 13:50:55 791

转载 【Shiro】2. Shiro认证流程

认证身份认证,就是判断一个用户是否为合法用户的处理过程。最常用的简单身份认证方式是系统通过核对用户输入的用户名和口令,看其是否与系统中存储的该用户的用户名和口令一致,来判断用户身份是否正确。认证的关键对象Subject:主体,主体可以是访问系统的用户、应用程序等。需要进行认证的都称为主体。 Principal:身份信息,是主体(Subject)进行身份认证的标识,标识必须具有唯一性。如用户名、手机号、邮箱地址等。一个主体可以有多个身份,但是必须有一个主身份(Primary Principal)

2021-12-20 11:47:07 820

转载 【Shiro】1. Shiro介绍及其基本概念

认证进入移动互联网时代,大家每天都在刷手机,常用的软件有微信、支付宝、头条等,下边拿微信来举例子说明认证相关的基本概念,在初次使用微信前需要注册成为微信用户,然后输入账号和密码即可登录微信,输入账号和密码登录微信的过程就是认证。系统为什么要认证?认证是为了保护系统的隐私数据与资源,用户的身份合法方可访问该系统的资源。认证︰用户认证就是判断一个用户的身份是否合法的过程,用户去访问系统资源时系统要求验证用户的身份信息,身份合法方可继续访问,不合法则拒绝访问。常见的用户身份认证方式有∶用户名密

2021-12-20 11:31:51 200

原创 MybatisPlus-常用字段默认值自动填充

MybatisPlus-常用字段默认值自动填充

2021-12-15 09:58:17 9359

原创 Navicat 15 设置深色主题

可应用操作系统:Windows、macOS、Linux可应用Navicat产品:全部可应用Navicat版本编号:版本 15 或以上Windows若要更改布景主题,请选择工具>选项>常规。然后,选择深色。重启Navicat后生效macOSNavicat 15 增加了对系统深色模式的支持。LinuxNavicat 15 增加了对系统深色模式的支持。(仅适用于 KDE 的 Linux)...

2021-04-28 09:08:06 16284 3

原创 IDEA中编辑的.properties配置文件提交到Git后显示乱码

IDEA中编辑的.properties配置文件提交到Git后显示乱码解决方法:

2021-04-25 15:42:37 1243

转载 MD5加密算法

import java.security.MessageDigest;public class MD5 {private static String byteArrayToHexString(byte b[]) {StringBuffer resultSb = new StringBuffer();for (int i = 0; i resultSb.appen

2017-09-28 20:29:28 148

原创 java算法实现"输入一个英文句子,反转句子中的单词顺序,但单词内字符的顺序不变"

publicclass Test {           public staticvoid main(String[] args) {                   String into ="I am a student";          System.out.println(reverse(into));     }          pub

2016-10-15 19:31:41 2593 1

原创 在 eclipse 中设置 servlet 模板

各位小伙伴在开发时是否感觉 eclipse 自带的 servlet 模板不好用,下面我们来设置一下自己的 servlet 模板。1. 在菜单栏点击 Window,选择 Preferences,然后 Java ——> Editor ——> Tamplates,点击右侧的 new 按钮,就可以编辑自己想要的 servlet 模板了!2. 分享一下我的 servlet 模板Name : se

2016-10-11 15:54:33 706

原创 在 eclipse 中 配置 tomcat 服务器

学习 Java 开发的小伙伴们免不了要在 eclipse 中配置 tomcat 服务器,那么在 eclipse 中怎么配置 tomcat 呢,下面我们就来看一下吧!

2016-09-23 18:44:07 470

空空如也

空空如也

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

TA关注的人

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