if的小世界

每颗星星都会以自己的方式闪耀着

Spring Security是如何储存认证用户信息的

How does Spring Security store authenticated user information

Spring Security是如何储存认证用户信息的 @[toc] 前言剧透 总结:Spring Security会将信息储存在SecurityContext中,请求过程中会被SecurityContextHolder进行管理,底层是基于的ThreadLocal(当然还有很多种策略)问题:SpringBoot底层的servlet会将每个请求分配一个线程,用ThreadLocal能拿到数据?......

简单谈谈动态代理

A blog for the Dynamic-Proxy

简单谈谈动态代理 什么是代理模式? 为其他对象提供一个代理以控制对某个对象的访问。 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。 代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提......

简单谈谈Redis

Briefly talk about Redis

简单谈谈Redis 前言 本节课不会过多演示具体代码的操作,更多的会注重概念与原理,比较适用于复习 什么是NoSQL nosql即not only sql,泛指“非关系型数据库” nosql不依赖业务逻辑方式储存,而是以key—value的键值对形式存储,因此大大增加了数据库的拓展能力 不遵守SQL标准 不支持ACID 远超于SQL的性能 适用场景 对数据高并发的读写 海量数据的读写 ......

SpringBoot项目启动时执行特定代码

The SpringBoot project executes specific code at start up

SpringBoot项目启动时执行特定代码 前言 (其实直接在main方法里写也不是执行不了) 如果只是简单的一些语句,写在main中可能会方便一些 但如果需要调用spring容器中的对象可能会要吃瘪,因为main方法是static的,而获取ioc对象不能使用static直接获取(会报错) 当调用@AutoWired获得ioc容器中的对象时 12@Autowired private st......

简单谈谈BitMap

Briefly talk about BitMap

简单谈谈BitMap 前言 对比——bitmap的使用与否 在咱们之前的储存结构里,需要O(1)复杂度进行查找时,我们一般习惯于用HashMap或者HashSet 如果我们想要储存一个int类型的数据,那么一个数据需要占据4个字节 若是想存储一个long类型的数据,那么一个数据需要占据8个字节 当数据非常大时,使用HashMap的情况下,内存可能撑不住 假设当有10亿个long类型的数据需要......

SpringCloud-Alibaba笔记

A blog for SpringCloud-Alibaba-Study

SpringCloud-Alibaba笔记 @[TOC] 前言 本文的代码和笔记都放在了我的个人gitee上,有需要可以点击查看 https://gitee.com/ifyyf/springcloud-alibaba-study 如有需要查看springcloud-Netflix笔记的同学可以点击《SpringCloud-Netflix笔记》查看 本文主要讲解SpringCloud-Alib......

记一次被删库勒索的经历

a blog of an experience of blackmailed by deleting my databases

记一次被删库勒索的经历 前言 我用的mysql数据库,今天同学调用接口时说接口返回提示"检索数据库失败",平时不会出现这种问题 我打算用navicat看一眼数据库,发现navicat居然无法登陆 然后我就去登录服务器看了一眼数据库,不看不知道,一看吓一跳,数据库表和数据都删了,始作俑者还留了封信 以下数据库已被删除:(忽略)。 我们有完整的备份。 要恢复它,您必须向我们......

来一点mysql的面试题

A blog for the Interview questions of MySQL

来一点mysql的面试题 数据库的三范式是什么 为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。 在关系型数据库中这种规则就称为范式。 范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式 第一范式:每列保持原子性 即:列不可再分 如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式 例如:将“地址”这个属性......

简单谈谈MySQL的事务

A blog for the transaction of MySQL

简单谈谈MySQL的事务 事务的基本特性和隔离级别 基本特性 ACID 事务的基本特性就是==ACID== ACID,是指数据库管理系统(DBMS)在写入或更新资料的过程中,为保证事务(transaction)是正确可靠的,所必须具备的四个特性: 原子性(atomicity,[ætəˈmɪsəti],或称不可分割性) 一个事务中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个......

简单谈谈MySQL的索引失效问题

A blog for the index in MySQL

简单谈谈MySQL的索引失效问题 前言 本笔记学习于B站尚硅谷MySQL数据库高级 DQL、DML、DDL语句不在本次课程之内,有需要可以参考视频MySQL_基础 我的mysql版本为 Server version: 5.5.62-log MySQL Community Server (GPL) 课程简介 本次课程主要面向java开发人员,并不完全契合运维和数据库工程师 1、mysql的......