spring源码-第五个后置处理器笔记

在手动注入源码这篇博客中,记录的是手动注入的源码,但是实际上就是第六个后置处理器的使用;所以这篇博客就主要记录第五个后置处理器的学习;第五个后置处理器,实际上在手动注入的时候,是和第六个后置处理器一起配合使用的org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory#populateBean第五个和第六个后置处理器都是在这个方法中完成调用的,第五个后置处理器是来判断是否需要进行属性注入的,这里也算是一个扩
分类: 其他 发布时间: 03-02 09:29 阅读次数: 0

ScheduledThreadPoolExecutor部分源码学习

ScheduledThreadPoolExecutor有一个功能,就是可以指定执行间隔,周期性的去执行指定的任务,和timer、定时任务的作用类似,网上也有好多说ScheduledThreadPoolExecutor的性能要比timer高,这个我还没有研究到,所以就不做对比,这篇笔记,主要记录部分源码的学习类结构ScheduledThreadPoolExecutor可以看到 ScheduledThreadPoolExecutor继承了线程池ThreadPoolExecutor,除此之外,还实现了Sc
分类: 其他 发布时间: 03-02 09:29 阅读次数: 0

DelayedWorkQueue踩坑笔记

在看这个源码的时候,踩了一个大坑,因为看网上的博客说:在这个类中,有一个DelayQueue的对象,但是我翻了几遍源码,也没看到这个内部类中有一个DelayQueue对象,直到我看了下这个类的继承关系和DelayQueue的基本一样之后,我觉得,有可能在jdk8中,这个内部类的源码改了,这个类自己去实现了DelayQueue的功能所以我就去找了下jdk的源码,发现jdk7的ScheduleThreadPoolExecutor的内部类DelayedWorkQueue也没有DelayQueue对象我就再往前
分类: 其他 发布时间: 03-02 09:29 阅读次数: 0

spring源码-第七个后置处理器的使用

初始化方法的处理这个笔记中,记录的就是第七个后置处理器的使用,这篇笔记就简单做一个总结吧在spring源码中,提供了三种初始化方法,spring也指定了三种初始化方法的优先级:@PostConstruct > InitializingBean接口 > init-method在初始化方法被调用的时候,只有@PostConstruct是在第七个后置处理器被调用的,其实逻辑和@Autowired的思想是一样的,先找到加了注解的方法,然后执行...
分类: 其他 发布时间: 03-02 09:28 阅读次数: 0

nacos心跳机制重复发送原理

nacos在注册之前,会进行一次心跳机制,在心跳机制的时候,调用的是schedule方法,但是会循环调用。。。再想下为什么不用定时执行的线程池?scheduleFixed…
分类: 其他 发布时间: 03-02 09:28 阅读次数: 0

Redisson分布式锁使用采坑记

先说问题:
分类: 其他 发布时间: 03-02 09:28 阅读次数: 0

RedissonMultiLock + RedissonLock部分源码

分类: 其他 发布时间: 03-02 09:28 阅读次数: 0

dubbo如何利用spring扩展点完成初始化

dubbo在初始化的时候,充分利用了spring的扩展点,进行初始化,这篇笔记主要记录dubbo是如何利用spring的扩展点来进行初始化的;这篇笔记只记录dubbo启动的时候的源码,不记录启动过程中服务导出和服务引入的源码dubbo关键类@DubboComponentScanDubboComponentScanRegistrarServiceAnnotationBeanPostProcessorReferenceAnnotationBeanPostProcessorServiceBeanR
分类: 其他 发布时间: 03-02 09:27 阅读次数: 0

springboot使用事务原理

在springboot项目中,无需使用@EnableTransactionManagement注解,可以直接在业务方法上添加@Transactional注解
分类: 其他 发布时间: 03-02 09:27 阅读次数: 0

spring事务传播机制源码学习笔记

传播机制源码
分类: 其他 发布时间: 03-02 09:27 阅读次数: 0

LinkedHashMap如何保证有序

我们常说linkedHashMap是有序的,这个有序也是分为两种的,分别是:插入顺序和访问顺序
分类: 其他 发布时间: 03-02 09:27 阅读次数: 0

dubbo源码 -- 服务导出

结论所谓的服务导出,就是服务提供者将本地服务注册到zk集群,并且开启netty,用来接收消费者的请求,dubbo服务提供者就是一个netty服务端对于服务导出,会进行以下几个步骤1.进行一些校验、参数取值、赋值等(同一个参数配置的覆盖)2.获取所有的注册中心、获取所有配置的协议3.组装url对象,由于dubbo是基于url来完成注册的,所以,会先拼接、组装url4.根据url和registry(注册中心)生成Invoker对象5.将Invoker对象进行包装,然后进行真正的导出5.1 首先会
分类: 其他 发布时间: 03-02 09:26 阅读次数: 0

智能指针的自定义及重载->

智能指针: (1)智能指针能够自动的释放内存,就不必自己手动的delete释放内存空间 (2)智能指针实际上是一个模板类,它的数据内型为auto_ptr<…>,定义方式例如:auto_ptr ptr(new int);不能是auto_ptr ptr=new int;代码:#include <iostream>#include <memory>//智能指针的头文件using namesp
分类: 其他 发布时间: 03-02 09:26 阅读次数: 0

C++ string类大总结

1、C++ 中的字符串C++ 语言中有单独字符串类型,在string头文件中,还有对应的宽字符串wstring.string iStr = “Hello world”; wstring wStr = “Hello world”;2、VC ++ 中的字符串在学Window是开发过程中最头疼的莫过于一堆字符串宏。 类型 MBCS 中含
分类: 其他 发布时间: 03-02 09:26 阅读次数: 0

解决Android Studio build grale一直卡着不动问题

每个安卓新人开始使用Android stduio导入别人项目时都会遇到gradle项目一直卡着不动,这是因为后台正在下载和项目对应的gradle,但是由于谷歌的一道墙,所以会导致下载缓慢。 **下面来解决这方面的问题**个人刚开始使用Android stduio时也是相当的困惑,所谓实践出真知,自己动手解决问题才是彻底的解决问题。方法一:一个是默认的gradle下载路径,也就是说你每次在
分类: 其他 发布时间: 03-02 09:26 阅读次数: 0

Java—网络编程实现UDP聊天室(局域网)

*** 建立UDP接收端的思路。** * 1,建立udp socket服务,因为是要接收数据,必须要明确一个端口号。 * 2,创建数据包,用于存储接收到的数据。方便用数据包对象的方法解析这些数据. * 3,使用socket服务的receive方法将接收的数据存储到数据包中。 * 4,通过数据包的方法解析数据包中的数据。
分类: 其他 发布时间: 03-02 09:25 阅读次数: 0

更新到Android Studio 3.0项目迁移遇到的问题解决方案

最近 Android Studio 3.0 版本正式推出,以前的项目签约过来碰到的一些问题解决。1. gradle 和 buildToolsVersion 版本Android Studio 3.0 要求 gradle 版本为 4.1 ,对应的 buildToolsVersion 为 26.0.2 ,然后记得在项目最外层的 build.gradle 添加 google() ,如果不添加将会导致某些官方
分类: 其他 发布时间: 03-02 09:25 阅读次数: 0

底层MFC窗口的实现

用多了面向对象的封装特性,突发奇想来试一试底层窗口的实现机制。以下是代码的实现及其过程:#include <windows.h>//底层实现窗口的头文件//6.处理消息(窗口过程)//CALLBACK 代表 _stdcall 参数的传递顺序:从右到左 一次入栈,并且在函数返回前,清空堆栈LRESULT CALLBACK WindowProc( _In_ HWND hwnd,//消息所属
分类: 其他 发布时间: 03-02 09:25 阅读次数: 0

解决LINK : fatal error LNK1168: 无法打开 无法写入

LINK : fatal error LNK1168: 无法打开xxxxx 进行写入遇到这种情况,一般是vs进行图片读写时上一次程序占用没有彻底关闭, 此时需要做的是 打开任务管理器,找到该进程,杀死他,再编译,就会发现编译通过。 以上就是解决方法,或许不单单是进行图片操作是出现,比如:mfc界面操作时也会遇到这种情况,解决方法统一。
分类: 其他 发布时间: 03-02 09:25 阅读次数: 0

关于创建MFC项目发生当前页面脚本发生错误(691)的问题解决

如图错误: 解决方案: 复制URL,打开,找到如图所示几行,全部注释。 这个错误网上找了大把,没看到,困扰我好久了,现在终于解决了。
分类: 其他 发布时间: 03-02 09:24 阅读次数: 0