自定义博客皮肤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)
  • 收藏
  • 关注

原创 spring初始化之refresh()------(二):invokeBeanFactoryPostProcessors

先上源码,当然说明都是在源码中了 /** * 调用BeanDefinitionRegistryPostProcessor的各个实现类,并且调用Ordered的实现排序调用 * 调用beanfactoryPostProcessor的各个实现类的方法,并且调用PriorityOrdered排序调用 * */ invokeBeanFactoryPostProcessors(beanFactory); protected void invokeBeanFactoryPostProcessors(Conf

2020-08-20 15:31:19 125

原创 spring初始化之refresh()------(一):obtainFreshBeanFactory

spring初始化中很重要的一步: /** * 刷新beanfactory,并解析配置文件,把配置文件中的bean一个个拿出来解析成bean定义,并且放到容器中去(并 *没有实例化,只是解析成bean定义) * 重点:怎么把配置信息解析到 */ ConfigurableListableBeanFactory beanFactory = obtainFreshBeanFactory(); //我们单独看这个方法,先脑海中想象一下,返回值为beanFactory,那么beanFactory是干啥的,

2020-08-19 16:29:03 107

原创 spring初识

spring初识 初窥spring 一个简单的demo,发现spring中初始化最重要的方法 refresh(),先理解这个方法每一步是要干啥,然后再去看里面的逻辑 //这里我们并没有采用xml的配置,假如是xml的配置使用ClassPathXmlAoplicationContext读取信息 @ComponentScan(basePackages = "com.gh.**") public class CompentScan { } public class Test { public stat

2020-08-19 16:24:37 129

原创 设计模式之代理模式

在使用mybatis的时候发现代理模式,最有意思的是明明dao层的接口没有实现类,但是我们都把这些接口都注册了,并且能通过@Autowried拿到bean,但是实际上拿到的都会是xxxMapperProxy这样的东东,所以就在想他到底是怎么玩的,看到proxy,我们肯定想到了代理模式 接下来我们直接先学习代理模式:代理模式分为2中,一种是静态代理,一种是动态代理,动态代理分为2中,cglib动态代理和jdk动态代理 静态代理 :这种代理模式需要代理对象和目标对象实现相同的接口。可以在不修改目标对

2020-08-03 17:26:53 95

原创 设计模式--------责任链模式

最近发现项目中有一个接口中使用if{}else{}达到7个之多,导致这个接口代码量达到500多行,所以想着怎么让这代码优雅一些,于是就想到了使用设计模式-责任链模式,保密原因,只贴出demo代码,说明直接看代码 //公共抽象类,本来预计只是想处理一个单项链表的,后来手痒,形成一个简单的双向链表了 //实际开发,根据需求完成即可 public abstract class Handler { protected Handler nexthandler; protected Han...

2020-07-02 18:30:29 156

原创 ThreadPoolExecutor学习

首先,我们先看一下阿里的规范 阿里发布的 Java开发手册中强制线程池不允许使用 Executors 去创建,而是通过 ThreadPoolExecutor 的方式,这样的处理方式让写的同学更加明确线程池的运行规则,规避资源耗尽的风险 说明:Executors各个方法的弊端: 1)newFixedThreadPool和newSingleThreadExecutor:   主要问题是堆积的请...

2020-01-07 14:40:03 160

原创 HashMap的源码学习

1、HashMap理论上就是一个存储数据的集合脱离不了CRUD HashMap1.7 与HashMap1.8的比较 HashMap1.8比1.7多了红黑树,作用就是优化查询,具体实现需后续了解 扩容出也做出了一些优化,jdk7并发可能会出现链表环(就是死循环),而jdk8优化了,使用了高低位,请看扩容的方法 (但是我觉得如果转为了红黑树,插入就会比之前慢,理论上转红黑树的情况不多,个人理解...

2019-12-31 17:30:50 133 1

空空如也

空空如也

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

TA关注的人

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