摘要:
一、简介 HashMap的源码我们之前解读过,数组加链表,链表过长时裂变为红黑树。自动扩容机制没细说,今天详细看一下 往期回顾: Java1.7的HashMap源码分析-面试必备技能 Java1.8的HashMap源码分析-面试必备技能 二、扩容机制 先说结论: hashmap的容量都是2的倍数,比 阅读全文
摘要:
一、简介 日志打印是java代码开发中不可缺少的重要一步。 日志可以排查问题,可以搜集数据 二、常用日志框架 比较常用的日志框架就是logback, 一些老项目会使用log4j,他们用的都是slf4j-api统一接口。 (1) 使用log4j log4j使用: 1. slf4j-api-1.5.11 阅读全文
摘要:
一、简介 SpringSecurity是一个功能强大且高度可定制的身份验证和访问控制框架,和spring项目整合更加方便。 二、核心功能 认证(Authentication):指的是验证某个用户能否访问该系统。 授权(Authorization):指的是验证某个用户是否有权限执行某个操作。 三、搭建 阅读全文
摘要:
一、定义 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Component public @interface Configuration { @AliasFor(annotation = Com 阅读全文
摘要:
一、前言 Springboot源码解析是一件大工程,逐行逐句的去研究代码,会很枯燥,也不容易坚持下去。 我们不追求大而全,而是试着每次去研究一个小知识点,最终聚沙成塔,这就是我们的springboot源码管中窥豹系列。 二、bean如何生成? 我们之前介绍了beanDefinition的结构: sp 阅读全文
摘要:
一、前言 Springboot源码解析是一件大工程,逐行逐句的去研究代码,会很枯燥,也不容易坚持下去。 我们不追求大而全,而是试着每次去研究一个小知识点,最终聚沙成塔,这就是我们的springboot源码管中窥豹系列。 二、beanDefinition如何加载 我们之前介绍了beanDefiniti 阅读全文
摘要:
一、前言 Springboot源码解析是一件大工程,逐行逐句的去研究代码,会很枯燥,也不容易坚持下去。 我们不追求大而全,而是试着每次去研究一个小知识点,最终聚沙成塔,这就是我们的springboot源码管中窥豹系列。 二、BeanPostProcessor BeanPostProcessor和Be 阅读全文
摘要:
一、前言 Springboot源码解析是一件大工程,逐行逐句的去研究代码,会很枯燥,也不容易坚持下去。 我们不追求大而全,而是试着每次去研究一个小知识点,最终聚沙成塔,这就是我们的springboot源码管中窥豹系列。 二、BeanFactoryPostProcessor BeanFactoryPo 阅读全文
摘要:
一、前言 Springboot源码解析是一件大工程,逐行逐句的去研究代码,会很枯燥,也不容易坚持下去。 我们不追求大而全,而是试着每次去研究一个小知识点,最终聚沙成塔,这就是我们的springboot源码管中窥豹系列。 二、EnableXXX 我们上一节讲了自动装配,用到了@SpringBootAp 阅读全文
摘要:
一、前言 Springboot源码解析是一件大工程,逐行逐句的去研究代码,会很枯燥,也不容易坚持下去。 我们不追求大而全,而是试着每次去研究一个小知识点,最终聚沙成塔,这就是我们的springboot源码管中窥豹系列。 二、何为自动装配? 我们想用redis,直接引入spring-boot-star 阅读全文