William(王明高) Blog

长风波浪会有时,直挂云帆济沧海。

Token和refreshtoken实现接口身份认证

一 问题 App 安装后,第一次启动时需要登录(在某些页面提示需要登录或者直接启动在登录界面)。而只要登录成功后,就不需要每次启动时再次登录。不过,当你的 App 长期未启动,再次启动时,就需要登录。这个是怎么实现的?App 又是怎么保持登录状态的? 二、实现思路 客户端在登录的时候带上设备的设备号、appId,并将其作为参数传递到服务端。服务端收到参数后,使用特定的算法(例如:AES...

项目环境搭建

1 系统环境 1、 系统信息 内存:8G CPU: 4核 IP:192.168.0.234 2 项目部署 2.1 说明 项目部署方式:Docker-compose。 Docker版本:Server Version: 19.03.12 所需的Dokcer镜像已存放于公司私有仓库镜像中,地址:http://192.168.0.58 ,用户名:admin,密码:Harb...

Mm Wiki内部知识库系统搭建

mm-wiki内部知识库系统搭建 1 部署 1.1 说明 项目部署方式:Docker-compose。 Docker版本:Server Version: 19.03.12 所需的Dokcer镜像已存放于公司私有仓库镜像中,地址:http://192.168.0.58 ,用户名:admin,密码:Harbor12345 为方便Docker后续使用,镜像被标记为:harb...

Zabbix监控

Zabbix监控 部署 1.1 说明 通过Zabbix、cadvisor、prometheus监控服务器、Docker的性能并通过grafana做展示 部署方式:Docker-compose。 Docker版本:Server Version: 19.03.12 1.2 部署Zabbix、prometheus、grafana、cadvisor容器 1.2.1 创建本地...

Efk(elk)日志收集

EFK(ELK)日志收集 1 说明 部署方式:Docker-compose。 Docker版本:Server Version: 19.03.12 通过elasticsearch,filebeat,kibana收集windows系统日志 通过elasticsearch,logstash,kibana收集嘉定项目开发环境tomcat日志,便于开发分析问题 部署位置:19...

Sprng Security Oauth2 认证和授权的区别

Sprng Security Oauth2

1 认证(Authentication)和授权(Authorization)的区别? 你要登机,你需要出示你的 passport 和 ticket,passport 是为了证明你是张三,这就是 authentication;而 ticket是为了证明你张三确实买了票可以上飞机,这就是 authorization。 2 深入剖析 引入 pom 依赖 ... <dependen...

Java 类加载机制深度剖析

Java

1 类加载机制 多个 java 文件经过编译打包后生成可运行 jar 包,最终由 java 命令运行某个主类的 main 函数启动程序,这里首先需要通过类加载器把主类加载到 JVM。 主类在运行过程中如果使用到其它类,会逐步加载这些类。 注意:jar 包里的类不是一次性全部加载的,是使用到时才加载。 类加载到使用整个过程有如下几步: 加载 » 验证 » 准备 » 解析 » 初始...

Spring 生命周期之 Bean 销毁

Bean 销毁

1 Spring Bean 销毁阶段划分 Bean 销毁前阶段 Bean 销毁阶段 Bean 垃圾回收(GC) 2 Spring Bean 销毁各阶段详细分析 2.1 Bean 销毁前阶段 DestructionAwareBeanPostProcessor#postProcessBeforeDestruction 2.1.1 代码示例 ... public c...

Spring 生命周期之 Bean 初始化阶段

Bean 初始化阶段

1 Bean 初始化阶段划分 Bean 初始化前阶段 Bean 初始化阶段 Bean 初始化后阶段 Bean 初始化完成阶段 2 Bean 初始化各阶段详细分析 2.1 Bean 初始化前阶段 BeanPostProcessor#postProcessBeforeInitialization 2.1.1 代码示例 ... class MyInstantia...

Spring 生命周期之 Aware 接口回调阶段

Aware 接口回调阶段

1 Aware 接口回调阶段 它是隶属于 Bean 的 Initializing,就是所谓的 Bean 的初始化阶段。我们看到 Spring Aware 接口是一个标记接口,它没有提供任何实现,因此 BeanNameAware 以及其他 Aware 结尾都实现这个接口或者扩展这个接口。这个接口有什么意义?这个接口我们可以看出他的基本特征:Aware是个后缀,前面是它包含的含义,Awar...