标签:详细分析

Spring

动态代理以及对应Spring中AOP源码分析

hellas 发布于 2019-08-21

AOP(面向切面编程)在Spring中是被广泛应用的(例如日志,事务,权限等),而它的基本原理便是动态代理。 我们知道动态代理有两种:基于JDK的动态代理以及基于CGlib动态代理。以下是两种动态代理的实现方式: //JDK动态代理 public class JDKProxy i...

阅读(9)评论(0)赞 (0)

Java

纯数据结构Java实现(1/11)(动态数组)

wenming.gapo 发布于 2019-08-20

我怕说这部分内容太简单后,突然蹦出来一个大佬把我虐到哭,还是悠着点,踏实写 大致内容有: 增删改查,泛型支持,扩容支持,复杂度分析。(铺垫: Java语言中的数组) 基础铺垫 其实没啥好介绍的,顺序存储,(非受限的)线性结构。查询O(1),因为支持随机存取。 Java中的数组 J...

阅读(13)评论(0)赞 (0)

Java

netty源码解解析(4.0)-18 ChannelHandler: codec–编解码框架

1

xiaoli.wang 发布于 2019-08-20

编解码框架和一些常用的实现位于io.netty.handler.codec包中。 编解码框架包含两部分:Byte流和特定类型数据之间的编解码,也叫序列化和反序列化。不类型数据之间的转换。 下图是编解码框架的类继承体系: 其中MessageToByteEncoder和ByteToM...

阅读(11)评论(0)赞 (0)

Java

Tomcat源码分析 (八)—– HTTP请求处理过程(一)

songhua.gao 发布于 2019-08-20

针对上述的类继承层级图,我们做如下说明: ajp和http11是两种不同的协议 nio、nio2和apr是不同的通信方式 协议和通信方式可以相互组合。 ProtocolHandler 包含三个部件: Endpoint 、 Processor 、 Adapter 。 Endpoin...

阅读(8)评论(0)赞 (0)

Java

Java 并发——基石篇(中)

14

wenming.gapo 发布于 2019-08-20

完整长文请见: https://createchance.github.io/post/java- 并发之基石篇 / Synchronized 实现机制 synchronized 是 Java 并发同步开发的基本技术,是 java 语言层面提供的线程间同步手段。我们编写如下一段代...

阅读(10)评论(0)赞 (0)

Java

Spring 启动过程(上)与 Web 服务器合作

yanxinchi 发布于 2019-08-19

前言 最近对 Spring 越来越感兴趣,却在阅读它的源码时很容易被类之间的跳转和方法的嵌套绕晕,为了避免无尽的烦恼,我决定跟它做一个了断,不再追求细节,了解其启动过程和重要组件即可,之后遇到细节问题再看对应模块的源码。 我们都知道,一个 Java Web 服务进程,Web 服务...

阅读(15)评论(0)赞 (0)

Java

JDK源码分析-AbstractQueuedSynchronizer(3)

5

zhuangli 发布于 2019-08-16

概述 前文「 JDK源码分析-AbstractQueuedSynchronizer(2) 」分析了 AQS 在独占模式下获取资源的流程,本文分析共享模式下的相关操作。 其实二者的操作大部分是类似的,理解了前面对独占模式的分析,再分析共享模式就相对容易了。 共享模式 方法概述 与独...

阅读(15)评论(0)赞 (0)

Java

走进JavaWeb技术世界4:Servlet 工作原理详解

15

darida 发布于 2019-08-16

微信公众号【黄小斜】大厂程序员,互联网行业新知,终身学习践行者。关注后回复「Java」、「Python」、「C++」、「大数据」、「机器学习」、「算法」、「AI」、「Android」、「前端」、「iOS」、「考研」、「BAT」、「校招」、「笔试」、「面试」、「面经」、「计算机基础...

阅读(17)评论(0)赞 (0)

Java

JDK源码分析-AbstractQueuedSynchronizer(1)

1

小丁 发布于 2019-08-15

概述 前文「 JDK源码分析-Lock&Condition 」简要分析了 Lock 接口,它在 JDK 中的实现类主要是 ReentrantLock (可译为“重入锁”)。ReentrantLock 的实现主要依赖于其内部的一个嵌套类 Sync,而 Sync 又继承自 A...

阅读(17)评论(0)赞 (0)

Java

JDK源码分析-AbstractQueuedSynchronizer(2)

2

wenming.gapo 发布于 2019-08-15

概述 前文「 JDK源码分析-AbstractQueuedSynchronizer(1) 」初步分析了 AQS,其中提到了 Node 节点的「独占模式」和「共享模式」,其实 AQS 也主要是围绕对这两种模式的操作进行的。 Node 节点是对线程 Thread 类的封装,因此 两种...

阅读(13)评论(0)赞 (0)

Java

Tomcat原理系列之三:对请求的过程详细分析

5

小丁 发布于 2019-08-14

请求的处理是整个Tomcat的核心。深入了解Tomcat的请求过程,对于我们理解我们的应用项目,对于我们解决问题,对于我们今后开发项目都有深远的影响 如果看过 Tomcat原理系列之二:由点到线,请求主干 ;一定对请求链具体走了哪些组件有了印象。我们再进一步拆解请求链,将链上涉及...

阅读(18)评论(0)赞 (0)

Java

Java并发指南12:深度解读 java 线程池设计思想及源码实现

6

songhua.gao 发布于 2019-08-11

深度解读 java 线程池设计思想及源码实现 转自 https://javadoop.com/2017/09/… 我相信大家都看过很多的关于线程池的文章,基本上也是面试必问的,好像我写这篇文章其实是没有什么意义的,不过,我相信你也和我一样,看了很多文章还是一知半解,甚...

阅读(42)评论(0)赞 (0)

Java

Java并发指南13:Java7/8 中的 HashMap 和 ConcurrentHashMap 全解析

邓龙华 发布于 2019-08-11

Java7/8 中的 HashMap 和 ConcurrentHashMap 全解析 转自 https://www.javadoop.com/post… 部分内容转自 http://www.jasongj.com/java/c… 今天发一篇"水文...

阅读(22)评论(0)赞 (0)

Java

Netty是什么

1

yeseng 发布于 2019-08-04

在开始了解 Netty 是什么之前,我们先来回顾一下,如果我们需要实现一个客户端与服务端通信的程序,使用传统的 IO 编程,应该如何来实现? IO编程 我们简化下场景:客户端每隔两秒发送一个带有时间戳的”hello world”给服务端,服务端收到之后打印。 为了方便演示,下面例...

阅读(33)评论(0)赞 (0)

Java

破坏双亲委派加载机制

1

puefu.he 发布于 2019-08-04

双亲委派模型并不是一个强制性的约束模型,而是 Java 设计者推荐给开发者的类加载器实现方式。在 Java 的世界中大部分类加载器都遵循这个原则,但是显然也有例外。 在《深入理解 JVM 虚拟机》一书中,作者提出双亲委派模型目前出现过 3 次较大规模的“被破坏”情况。 第一次被破...

阅读(46)评论(0)赞 (0)

Java

彻底搞懂Netty高性能之零拷贝

5

wenming.gapo 发布于 2019-08-01

作为Java网络编程学习者,不仅要知道NIO,还一定要学习Mina和Netty这两个优秀的网络框架。 作为上一篇 NIO效率高的原理之零拷贝与直接内存映射 的补充,本文将针对Netty的零拷贝特性进行详细分析。 Netty高性能的原因 Netty作为异步事件驱动的网络框架,高性能...

阅读(28)评论(0)赞 (0)

Java

面试中关于多线程同步,你必须要思考的问题

1

hellas 发布于 2019-07-31

面试多线程同步,你必须要思考的问题 ReentrantLock的实现网上有很多文章了,本篇文章会简单介绍下其java层实现,重点放在分析竞争锁失败后如何阻塞线程。 作者:佚名 来源: java520 | 2019-07-31 09:06 ReentrantLock的实现网上有很多...

阅读(34)评论(0)赞 (0)

Java

JAVA并发编程之-ReentrantLock锁原理解读

4

hanze 发布于 2019-07-30

作者 : 毕来生 微信: 878799579 锁状态转换 Lock分类 ​ Jdk1.5以后帮助我们提供了线程同步机制,通过显示定义同步锁来实现对象之间的同步。还是Doug Lea这个家伙写的。相信读过源码的人在很多地方都可以看到这个家伙。 ​ Lock可以显示的进行加锁,解锁。...

阅读(31)评论(0)赞 (0)