上一页 1 2 3 4 5 6 7 ··· 11 下一页
摘要: 置顶一篇文章,主要是整理一下写过的JDK中各个类的源码及其他框架源码解析的文章,方便自己随时阅读也方便网友朋友们阅读与指正 基础篇 从为什么String=String谈到StringBuilder和StringBuffer Java语法糖1:可变长度参数以及foreach循环原理 Java语法糖2: 阅读全文
posted @ 2017-05-01 13:46 五月的仓颉 阅读(8331) 评论(2) 推荐(5) 编辑
摘要: 前言 我们在开发中常遇到一种场景,Bean里面有一些参数是比较固定的,这种时候通常会采用配置的方式,将这些参数配置在.properties文件中,然后在Bean实例化的时候通过Spring将这些.properties文件中配置的参数使用占位符"${...}"替换的方式读入并设置到Bean的相应参数中 阅读全文
posted @ 2017-04-30 17:34 五月的仓颉 阅读(25433) 评论(3) 推荐(14) 编辑
摘要: AspectJAwareAdvisorAutoProxyCreator及为Bean生成代理时机分析 上篇文章说了,org.springframework.aop.aspectj.autoproxy.AspectJAwareAdvisorAutoProxyCreator这个类是Spring提供给开发者 阅读全文
posted @ 2017-04-30 13:32 五月的仓颉 阅读(10636) 评论(4) 推荐(4) 编辑
摘要: 前言 前面写了六篇文章详细地分析了Spring Bean加载流程,这部分完了之后就要进入一个比较困难的部分了,就是AOP的实现原理分析。为了探究AOP实现原理,首先定义几个类,一个Dao接口: Dao接口的实现类DaoImpl: 定义一个TimeHandler,用于方法调用前后打印时间,在AOP中, 阅读全文
posted @ 2017-04-29 14:23 五月的仓颉 阅读(32813) 评论(9) 推荐(16) 编辑
摘要: 前言 Spring配置文件读取流程本来是和http://www.cnblogs.com/xrq730/p/6285358.html一文放在一起的,这两天在看Spring自定义标签的时候,感觉对Spring配置文件读取流程还是研究得不够,因此将Spring配置文件读取流程部分从之前的文章拆出来单独成为 阅读全文
posted @ 2017-04-22 12:44 五月的仓颉 阅读(5664) 评论(1) 推荐(3) 编辑
摘要: 原型Bean加载过程 之前的文章,分析了非懒加载的单例Bean整个加载过程,除了非懒加载的单例Bean之外,Spring中还有一种Bean就是原型(Prototype)的Bean,看一下定义方式: 原型Bean加载流程总得来说和单例Bean差不多,看一下不同之处,在AbstractBeanFacto 阅读全文
posted @ 2017-04-16 14:35 五月的仓颉 阅读(5421) 评论(0) 推荐(6) 编辑
摘要: 为什么Spring要支持Autowire(自动装配) 先写几个类,首先定义一个Animal接口表示动物: 写一个Animal接口的实现Tiger类: 写一个动物园类Zoo,持有Animal接口,表示动物园中有动物: 配置一下spring文件,由于这个功能研究的是Autowire,因此我命名为auto 阅读全文
posted @ 2017-04-13 23:26 五月的仓颉 阅读(14553) 评论(2) 推荐(12) 编辑
摘要: 前言 之前两篇文章【Spring源码分析】非懒加载的单例Bean初始化过程(上篇)和【Spring源码分析】非懒加载的单例Bean初始化过程(下篇)比较详细地分析了非懒加载的单例Bean的初始化过程,整个流程始于AbstractApplicationContext的refresh()方法: 之前重点 阅读全文
posted @ 2017-04-07 19:51 五月的仓颉 阅读(4611) 评论(7) 推荐(0) 编辑
摘要: 问题描述 业务有一个需求,我把问题描述一下: 不知道这个问题有没有说清楚,没说清楚没关系,写一段测试代码: 简单说就是,传入一个IP,尽量构建一个全局唯一的字符串(这么做的原因是,如果字符串的唯一性不强,比方说锁的"192.168.1.1",如果另外一段业务代码也是锁的这个字符串"192.168.1 阅读全文
posted @ 2017-04-04 13:37 五月的仓颉 阅读(27063) 评论(37) 推荐(22) 编辑
摘要: 前言 最近一直在看Spring源码,其实我之前一直知道AOP的基本实现原理: 如果针对接口做代理默认使用的是JDK自带的Proxy+InvocationHandler 如果针对类做代理使用的是Cglib 即使针对接口做代理,也可以将代理方式配置成走Cglib的 之后要看AOP源码了,Proxy+In 阅读全文
posted @ 2017-04-03 14:49 五月的仓颉 阅读(46369) 评论(10) 推荐(29) 编辑
摘要: 模块间调用 在一个应用系统中,无论使用何种语言开发,必然存在模块之间的调用,调用的方式分为几种: (1)同步调用 同步调用是最基本并且最简单的一种调用方式,类A的方法a()调用类B的方法b(),一直等待b()方法执行完毕,a()方法继续往下走。这种调用方式适用于方法b()执行时间不长的情况,因为b( 阅读全文
posted @ 2017-02-23 20:12 五月的仓颉 阅读(66655) 评论(16) 推荐(49) 编辑
摘要: 前言 在【Java设计模式】系列中,LZ写了十几篇关于设计模式的文章,大致是关于每种设计模式的作用、写法、优缺点、应用场景。 随着LZ自身的成长,再加上在工作中会从事一定的架构以及底层代码设计的原因,在近半年的实践中,对于设计模式的理解又有了新的认识,因此有了此文,目的是和网友朋友们分享自己对于设计 阅读全文
posted @ 2017-02-23 09:59 五月的仓颉 阅读(14295) 评论(31) 推荐(31) 编辑
摘要: doCreateBean方法 上文【Spring源码分析】非懒加载的单例Bean初始化过程(上篇),分析了单例的Bean初始化流程,并跟踪代码进入了主流程,看到了Bean是如何被实例化出来的。先贴一下AbstractAutowireCapableBeanFactory的doCreateBean方法代 阅读全文
posted @ 2017-02-04 16:49 五月的仓颉 阅读(7613) 评论(2) 推荐(1) 编辑
摘要: 代码入口 上文【Spring源码分析】Bean加载流程概览,比较详细地分析了Spring上下文加载的代码入口,并且在AbstractApplicationContext的refresh方法中,点出了finishBeanFactoryInitialization方法完成了对于所有非懒加载的Bean的初 阅读全文
posted @ 2017-02-03 17:13 五月的仓颉 阅读(16335) 评论(8) 推荐(6) 编辑
摘要: 代码入口 之前写文章都会啰啰嗦嗦一大堆再开始,进入【Spring源码分析】这个板块就直接切入正题了。 很多朋友可能想看Spring源码,但是不知道应当如何入手去看,这个可以理解:Java开发者通常从事的都是Java Web的工作,对于程序员来说,一个Web项目用到Spring,只是配置一下配置文件而 阅读全文
posted @ 2017-02-03 11:58 五月的仓颉 阅读(66005) 评论(26) 推荐(35) 编辑
摘要: 前言 Spring是一款非常强大的框架,可以说是几乎所有的企业级Java项目使用了Spring,而Bean又是Spring框架的核心。 Spring框架运用了非常多的设计模式,从整体上看,它的设计严格遵循了OCP 开闭原则,即: 1、保证对修改关闭,即外部无法修改Spring整个运作的流程 2、提供 阅读全文
posted @ 2016-08-12 21:08 五月的仓颉 阅读(22489) 评论(9) 推荐(14) 编辑
摘要: 索引 无论是面试,还是实际工作中,对于一个Java程序员来说,数据库优化是避不开的一个技术点,关于数据库的优化,在性能达不到要求的情况下,我大致给出以下几个方向: (1)优化表结构,对常用字段和非常用的字段分开存储 (2)优化SQL,合理使用索引 (3)做数据库读写分离,减少IO压力,由于数据库对记 阅读全文
posted @ 2016-07-30 17:12 五月的仓颉 阅读(5574) 评论(6) 推荐(6) 编辑
摘要: pom.xml与settings.xml pom.xml与setting.xml,可以说是Maven中最重要的两个配置文件,决定了Maven的核心功能,虽然之前的文章零零碎碎有提到过pom.xml和settings.xml里面的内容,但都是大略带过,学习与研究地并不细致,本文的目的就是详细研究下这两 阅读全文
posted @ 2016-07-30 17:11 五月的仓颉 阅读(17788) 评论(3) 推荐(8) 编辑
摘要: 连接查询 连接是关系型数据库模型的主要特点。 连接查询是关系型数据库中最主要的查询,主要包括内连接、外连接等通过联结运算符可以实现多个表查询。 在关系型数据库管理系统中,表建立时各种数据之间的关系不必确定,常把一个实体的所有信息存放在一个表中,当查询数据时通过连接操作查询出存放在多个表中的不同实体信 阅读全文
posted @ 2016-05-30 23:38 五月的仓颉 阅读(3416) 评论(1) 推荐(2) 编辑
摘要: 前言 上一篇文章UML类图(上):类、继承、实现,讲了UML类图中类、继承、实现三种关系及其在UML类图中的画法,本文将接着上文的内容,继续讲讲对象之间的其他几种关系,主要就是关联、聚合、组合、依赖,下面开始文章的内容。 关联关系 关联(Assocition)关系是类与类之间最常见的一种关系,它是一 阅读全文
posted @ 2016-05-27 11:21 五月的仓颉 阅读(14765) 评论(4) 推荐(11) 编辑
上一页 1 2 3 4 5 6 7 ··· 11 下一页