Spring循环依赖

什么是循环依赖问题? 循环依赖:说白是一个或多个对象实例之间存在直接或间接的依赖关系,这种依赖关系构成了构成一个环形调用。 第一种情况:自己依赖...

2017-09-03 · 爱码仕

结构型 - 代理(Proxy)和装饰器(Decorator)

代理模式 代理模式(Proxy Design Pattern)在不改变原始类(或叫被代理类)代码的情况下,通过引入代理类来给原始类附加功能。 静态代理 比如我们...

2017-09-01 · 爱码仕

创建型 - 单例模式(Singleton pattern)

概念 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 原则 私有构造(阻止类被通过常规方法实例化) 以静态方法或者枚举返回实例(保证实例的唯...

2017-08-29 · 爱码仕

Spring Bean的生命周期

实例化 Bean 对象。 设置 Bean 属性。 如果我们通过各种 Aware 接口声明了依赖关系,则会注入 Bean 对容器基础设施层面的依赖。具体包括 BeanNameAware、Be...

2017-06-28 · 爱码仕

并发程序问题的根源

并发程序问题的根源 这些年,我们的 CPU、内存、I/O 设备都在不断迭代,不断朝着更快的方向努力。但是,在这个快速发展的过程中,有一个核心矛盾一...

2017-03-12 · 爱码仕

Java内存模型

概念对齐 Java内存模型 = Java Memory Model ,以下文章简称JMM 前言 在说Java内存模型之前呢,我们先说下内存模型的相关概念。 内存模型的相关概念 CPU为...

2016-04-28 · 爱码仕

伪共享的原理以及Java解决方案

前言阅读 伪共享的诞生基于CPU多级缓存,建议阅读前言在看本文 CPU多级缓存 伪共享的定义 伪共享不是单一语言问题,我在学习相关内容的时候,经常会...

2016-04-25 · 爱码仕

锁的总结

带着问题找答案 Q1:Java是怎么上的锁? Q2:有哪些锁?使用场景? 锁的原理梳理 锁的脑图 宏观分类(乐观锁vs悲观锁) 只是一种设计思想,并不是...

2016-04-20 · 爱码仕

深入理解JVM内存结构

内存结构 Java 源代码文件经过编译器编译后生成字节码文件,然后交给 JVM 的类加载器,加载完毕后,交给执行引擎执行。在整个执行的过程中,JVM 会用一块空...

2016-04-18 · 爱码仕

类加载器、类加载过程,双亲委派模型

类加载过程 加载 虚拟机规范上面这 3 点并不具体,因此是非常灵活的。比如:“通过全类名获取定义此类的二进制字节流” 并没有指...

2016-04-01 · 爱码仕

MongoDB 实战入门(一)

信息具备时效性,请在阅读文章的时候对一些缺点优点要保持探索的精神,看一下现在是否支持了这些缺点,或者又强化了哪些优点 概念对齐 Bson BSON( Binary Serialized Document Format) 是一...

2015-10-20 · 爱码仕

TCP粘包和半包

什么是粘包 粘包问题是指当发送两条消息时,比如发送了 ABC 和 DEF,但另一端接收到的却是 ABCD,像这种一次性读取了两条数据的情况就叫做粘包(正常...

2014-08-29 · 爱码仕

TCP_IP详解

OSI七层/四层模型对应关系 数据链路层数 数据包(以太网数据包)格式,除了应用层没有头部,其他都有 数据包在传送时的封装和解封装如下所示 细说TC...

2014-08-22 · 爱码仕

String、StringBuffer、StringBuilder区别

区别: String是不可变的对象, 因此在每次对String 类型进行改变的时候,都会生成一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变...

2014-04-28 · 爱码仕

操作系统之CPU多级缓存

什么是CPU多级缓存? CPU缓存的来历 因为CPU和内存之间的频繁交互,内存的效率提升远不如CPU,为了解决CPU运算速度与内存读写速度不匹配...

2014-03-05 · 爱码仕