摘要: 之前有文章已经介绍过了 "JVM中的类加载机制" ,JVM中通过类加载加载class文件,通过双亲委派模型完成分层加载。实际上类加载机制并不仅仅是在JVM中得以运用,通过影响字节码生成和类加载器目前已经有了许多相关的技术诞生。特别的对于进行应用服务器的开发过程中,类加载机制几乎是必须掌握的。 为什么 阅读全文
posted @ 2020-01-10 08:58 宁愿呢 阅读(894) 评论(1) 推荐(1) 编辑
摘要: 什么是索引 索引是一种数据结构,其作用就是用来提高数据查询效率。比较常用的比喻就是将其类比为书籍的目录。通过目录可以精确的找到某一章节的内容所在页。 在数据量较小的时候使用索引其实也没有什么意义,即使没有索引需要一条一条遍历数据对于计算机来说也并不需要太多时间。而一旦数据量较大,要保证我们能正常的对 阅读全文
posted @ 2019-08-02 10:42 宁愿呢 阅读(885) 评论(0) 推荐(0) 编辑
摘要: 前言 在Spring中AOP是我们使用的非常频繁的一个特性。通过AOP我们可以补足一些面向对象编程中不足或难以实现的部分。 AOP 前置理论 首先在学习源码之前我们需要了解关于AOP的相关概念如切点切面等,以及如何使用AOP,这里可以看我之前的文章: "Spring系列之AOP的原理及手动实现" 创 阅读全文
posted @ 2019-07-05 14:51 宁愿呢 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 引言 前文我们介绍了关于如何学习Spring的源码以及解析了spring中加载配置文件注册Beandefinition的过程。今天我们继续学习DI的过程。 创建实例和DI过程 IOC和DI都是对spring容器特性的描述。IOC指的是将实例的生命周期交给第三方管理(spring)。而DI的侧重点在于 阅读全文
posted @ 2019-06-22 10:23 宁愿呢 阅读(415) 评论(0) 推荐(0) 编辑
摘要: 如何学习spring源码 前言 本文属于spring源码解析的系列文章之一,文章主要是介绍如何学习spring的源码,希望能够最大限度的帮助到有需要的人。文章总体难度不大,但比较繁重,学习时一定要耐住性子坚持下去。 获取源码 源码的获取有多种途径 GitHub "spring framework" 阅读全文
posted @ 2019-06-06 09:10 宁愿呢 阅读(1795) 评论(1) 推荐(0) 编辑
摘要: 从JDK5开始,Java增加对注解的支持,注解可以在编译,类加载和运行时被读取,并执行相应一些定义好的处理。通过注解可以在不改变原有代码和逻辑的情况下进行一些其他的补充操作。 系统注解 元注解 在java中系统为我们预置了一部分注解,我们可以通过这些注解来定义其他注解的作用和有效范围等特性。 @Ta 阅读全文
posted @ 2019-05-13 13:56 宁愿呢 阅读(485) 评论(0) 推荐(1) 编辑
摘要: ReentrantLock是一个可重入的互斥锁,基于AQS实现,它具有与使用 synchronized 方法和语句相同的一些基本行为和语义,但功能更强大。 lock和unlock 中进行同步操作都是从lock方法开始。lock获取锁,进行一系列的业务操作,结束后使用unlock释放锁。 lock 中 阅读全文
posted @ 2019-04-24 08:56 宁愿呢 阅读(1358) 评论(0) 推荐(2) 编辑
摘要: 什么是AQS AQS,即 ,是一套定义了多线程访问共享资源的同步器框架。在JDK的并发包中很多类都是基于AQS进行实现的,比如 , 等。 AQS中的设计模式 如果单单只是看AQS类中的代码的haul可能会产生很多疑惑,因为类中很多方法都是只有方法体,具体的实现需要到子类中才能看到。 模板方法模式 在 阅读全文
posted @ 2019-04-17 12:31 宁愿呢 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 引言 如果熟悉使用JDBC来连接数据库的同学一定很清楚连接数据库的代码中一定会有依据 之前没有想过为什么需要有这么一个语句,都是按照文档直接这么做的,在这篇文章中我来试着解释这么做的原因。 类加载机制 在这之前我们先来说下Java中的类加载机制。 在Java中如果想要使用一个类,则必须要求该类已经被 阅读全文
posted @ 2019-04-01 09:19 宁愿呢 阅读(4912) 评论(2) 推荐(3) 编辑
摘要: 引言 之前在深入了解数据库理论的时候,了解到事物的不同隔离级别可能存在的问题。为了更好的理解所以在MySQL数据库中测试复现这些问题。关于脏读和不可重复读在相应的隔离级别下都很容易的复现了。但是对于幻读,我发现在可重复读的隔离级别下没有出现,当时想到难道是MySQL对幻读做了什么处理? 测试: 创建 阅读全文
posted @ 2019-03-19 09:22 宁愿呢 阅读(31498) 评论(13) 推荐(15) 编辑