1 @RestController 导入: import org.springframework.web.bind.annotation.RestController; 官方文档解释: ...
Java的同学对写单例都是信手拈来,各大博客都有什么懒汉式,饿汉式,double-checked locking等等,但《Effective Java》推荐了两种更为精简高效的写法:静态内部类和...
0 写在前面的话 在项目中有一个排序问题,考虑到未来需要排序的数据量可能很大,想用一个性能较好的排序算法,现在有三套解决方法:jdk提供的集合的sort方法(Collections.sort)...
Spring IoC是Spring的核心,所以IoC也是Spring MVC的基础,Spring MVC 会建立起一个IOC容器体系,IoC的启动过程与web容器启动的过程是集成在一起的,它们的...
在上一篇Spring源码的依赖注入总结中,我们可以清楚的知道DI有助于应用对象之间的解耦,这章我们来聊聊另外一种常见且有用的解耦方式,在比较大的系统中的日志管理、事务管理等功能,我们可以使用用面...
上篇我们讲了观察者模式、适配器模式和代理模式,在Java中应用很多的还有一个工厂模式,工厂模式分很多种,所以我们单列一篇文章来总结。 工厂模式 1、 传统方式 传统要获取一个类的对象,通常...
上篇文章我们分析了IOC容器的初始化,可以看出初始化其实就是在IoC容器中建立BeanDefinition数据映射,但并没有对Bean的依赖关系进行注入,依赖注入是用户第一次向IoC容器索要Be...
我们都知道IoC(Inversion of control)是控制反转,控制反转的核心是依赖反转,那到底什么是“依赖反转”,“哪些方面的控制被反转了?”--依赖对象的获得被反转了。通过依赖注入的...
最近看spring源码的时候会看到很多经典的设计模式,索性就把几个常用的经典的设计模式再复习总结遍。 观察者模式 适配器模式 代理模式 装饰器模式 一、观察者模式 是什...
最近看Spring IoC源码的时候,发现Spring IoC中的BeanDefinition的注册采用ConcurrentHashMap<String, BeanDefinition&g...
Java多线程是Java程序员必须掌握的基本的知识点,这块知识点比较复杂,知识点也比较多,今天我们一一来聊下Java多线程,系统的整理下这部分内容。 一、Java中线程创建的三种方式: 1....
引文 Java GC主要可以由三个问题展开来讲 1、哪些内存需要回收 2、什么时候回收 3、怎样回收 这三个问题讲清楚后,至少在脑海里对Java GC有了一个比较清晰的理解,那接下来我...
为什么要写这个题目?我记得我在面试阿里的时候面试官问了我这个问题,当时没能答得很好,只说了些概念的东西,很是心虚,于是下定决心要把这个问题搞懂,现在终于把这个问题怼清楚了,分享给大家,希望你们以...
上篇文章我们了解了Java虚拟机的内存模型,也知道不同区域的内存都存储的是什么,现在我们进一步来探究内存上存储的数据是怎么创建的,内存大小又是怎么分配的,数据创建成功后怎么被访问的。我们以Jav...
Java虚拟机是Java工程师必学的进阶功课,这段时间开始死磕JVM。今天把JVM的基础知识点Java的内存模型怼清楚,废话不多说,干货走起! 程序计数器 是什么:程序计数器是很小的一块内...
一直想找个时间系统的整理下Java的集合类,毕竟Collection包含了很多我们在实际项目中要用到的数据结构,比如列表、set、队列等,下面我们直接来看看Java集合类中各大数据结构。 Co...
在Java的学习过程中,多多少少会遗漏掉一些基本的知识点,而这些基本的知识点往往是奠定Java基础很重要的部分,里面的很多知识点我们编程中往往用不到,但理解它们能帮助我们更好地掌握Java,本文...