Spring-IOC-实现原理详解-1-IOC初始化流程

Spring如何实现将资源配置通过加载、解析,生成BeanDefinition并注册到IoC容器中的。

阅读全文

Spring-前言

Spring是什么?它是怎么诞生的?有哪些主要的组件和核心功能呢?本文通过这几个问题来构筑对Spring和Spring Framework的整体认知。 什么是Spring? Spring是什么?它是怎么诞生的?它的诞生是为了解决什么问题? Spring的起源百度百科中关于Spring的起源介绍如下: 要谈Spring的历史,就要先谈J2EE。J2EE应用程...

阅读全文

分布式任务

分布式定时任务调度。 xxl-jobhttps://www.xuxueli.com/xxl-job/ 基于xxl-job二次开发 i-scheduler-spring-boot-starter 其它web服务只需引用此starter包即可。 依赖i-scheduler-core。 i-scheduler-core starter组件核心模块,提供其它...

阅读全文

Spring-AOP-实现原理详解

AOP的实现过程:1、目标对象是如何变成代理对象的?2、代理对象是怎么执行目标方法的?

阅读全文

JVM-调试排错-汇总

JVM调优参数常见参数 -Xms 堆最小值 -Xmx 堆最大堆值。-Xms与-Xmx 的单位默认字节都是以k、m做单位的。 -Xmn 新生代大小 -Xss 设置每个线程可使用的内存大小,即栈的大小。 在相同物理内存下,减小这个值能生成更多的线程,但操作系统对一个进程内的线程数还是有限制的,不能无限生成。 线程栈的大小是个双刃剑,如果设置过小,可能会出现栈...

阅读全文

Java并发和多线程-JUC锁-锁核心AQS-CLH前言

相信大部分人在看AQS的时候都能看到注释上有这么一段话: 123456/** * Wait queue node class. * * <p>The wait queue is a variant of a "CLH" (Craig, Landin, and * Hagersten) lock queue. */ 为了更好的理...

阅读全文

Java基础-集合-TreeMap

概述Java TreeMap实现了SortedMap接口,也就是说会按照key的大小顺序对Map中的元素进行排序,key大小的评判可以通过其本身的自然顺序(natural ordering),也可以通过构造时传入的比较器(Comparator)。 TreeMap底层通过红黑树(Red-Black tree)实现,也就意味着containsKey()、get(...

阅读全文

Java-基础-集合-PriorityQueue

优先队列的作用是能保证每次取出的元素都是队列中权值最小的(Java的优先队列每次取最小元素,C++的优先队列每次取最大元素)。这里牵涉到了大小关系,元素大小的评判可以通过元素本身的自然顺序(natural ordering),也可以通过构造时传入的比较器(Comparator,类似于C++的仿函数)。 Java中PriorityQueue实现了Queue接口...

阅读全文

Java Collection - Stack & Queue & Deque

概述Java里有一个叫做Stack的类,却没有叫做Queue的类(它是个接口名字)。 当需要使用栈时,Java已不推荐使用Stack,而是推荐使用更高效的ArrayDeque;既然Queue只是一个接口,当需要使用队列时也就首选ArrayDeque了(次选是LinkedList)。 为什么Stack被弃用Java 中的 Stack 实现,是被业界一直认为非常...

阅读全文

JVM-GC-垃圾回收基础知识

垃圾收集主要是针对堆和方法区进行。程序计数器、虚拟机栈和本地方法栈这三个区域属于线程私有的,只存在于线程的生命周期内,线程结束之后也会消失,因此不需要对这三个区域进行垃圾回收。 判断一个对象是否可被回收1、引用计数算法2、可达性分析算法在java语言里,可作为GC Roots的对象包括下面几种: 虚拟机栈(栈帧中的本地变量表)中的引用的对象。 方法区中的类...

阅读全文