自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 AQS源码分析

一、前言问题引入@Controllerpublic class TradeController { @Autowired private TradeService tradeService; @RequestMapping("/order") public String order() { tradeService.decStock(); return "success"; }}@Servicepublic class

2022-04-04 20:54:24 503

原创 HashMap源码分析

1.方法1.1 put()1.1.1 首先看方法注释。需要注意的是,put的键已经存在映射时,会覆盖旧值,并返回旧值。这点之后再拓展说明。public V put(K key, V value) { return putVal(hash(key), key, value, false, true); }1.1.2 哈希/** * 计算key.hashCode()并将散列的(XOR)较高的位散布到较低的位。 * 因为该表使用2的幂次掩码,所以仅在当前掩码上方的位中发生

2021-05-10 21:06:59 139

原创 Spring源码--解决循环依赖

前言在了解循环依赖前,需要对bean的创建流程十分熟悉,如果没有看过相关源码,可以参考:Spring源码–bean的创建流程一、什么是循环依赖简单来说,就是A依赖B,B依赖C,C依赖A。循环依赖的情况下,对象创建时,所依赖的对象并不存在,导致创建出现问题。循环依赖有两种情况:1、构造器循环依赖public class D { public D(C c) { ... }}public class C { public C(D d) { ...

2021-05-04 22:03:59 164 1

原创 Spring源码--bean的创建流程

一、核心方法reflesh() public void refresh() throws BeansException, IllegalStateException { synchronized (this.startupShutdownMonitor) { // 准备工作,初始化Spring状态,并确认配置正确 prepareRefresh(); // 获取bean工厂 ConfigurableListableBeanFactory beanFactory = obtain

2021-05-04 17:38:01 198

原创 List源码分析--ArrayList

1.扩容机制1.1.源码分析 List<Integer> list = new ArrayList<>(); for (int i = 0;i < 15;i++){ list.add(i); }初始化: // 默认初始化一个空的object数组 public ArrayList() { this.elementData = DEFAULTCAPACITY_EMPTY_ELEM

2021-04-24 11:04:20 134 1

原创 自定义@Autowired注解

前言介绍@Autowired 可以对类成员变量、方法及构造函数进行标注,让 spring 完成 bean 自动装配的工作手动实现1. 新建一个普通Java工程2.Autowired注解类@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.FIELD)@Inherited@Documentedpublic @interface Autowired {}3.UserController类public class UserCo

2021-04-18 08:58:34 640 1

原创 RabbitMQ 使用总结

Docker中RabbitMQ 的使用总结1.WEB界面1.1无法打开WEB界面2.2 后台页面信息显示不全1.WEB界面1.1无法打开WEB界面运行容器时确保端口开启状态docker run -di --name=mycloud_rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 15671:15671 -p 15672:15672 -p 25672:25672仍无法访问 http://localhost:15672默认不会开启管理后台页面,

2021-04-17 22:16:10 212 1

空空如也

空空如也

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

TA关注的人

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