GarfieldEr007的专栏

勤奋治学 深度思考 静心钻研 先苦后甜

Spring的IOC原理[通俗解释一下]

1. IoC理论的背景 我们都知道,在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑。 图1:软件系统中耦合的对象 如果我们打开机械式手表的后盖,就会看到与上面类似的情形,各个齿轮分别带动时针、分针和秒针顺时针旋转...

2017-01-23 18:49:21

阅读数 360

评论数 0

spring ioc原理(看完后大家可以自己写一个spring)

最近,买了本spring入门书:spring In Action 。大致浏览了下感觉还不错。就是入门了点。Manning的书还是不错的,我虽然不像哪些只看Manning书的人那样专注于Manning,但怀着崇敬的心情和激情通览了一遍。又一次接受了IOC 、DI、AOP等Spring核心概念。 ...

2017-01-23 18:47:56

阅读数 290

评论数 0

理解RESTful架构

越来越多的人开始意识到,网站即软件,而且是一种新型的软件。   这种"互联网软件"采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency)、高并发等特点。   网站开发,完全可以采用软件开发的模式。但是传统上,软件和网络是两个不同的...

2017-01-23 18:46:19

阅读数 1489

评论数 0

Spring:源码解读Spring IOC原理

Spring IOC设计原理解析:本文乃学习整理参考而来 一、 什么是Ioc/DI? 二、 Spring IOC体系结构 (1) BeanFactory (2) BeanDefinition 三、 IoC容器的初始化 1、 XmlBeanFactory(屌丝...

2017-01-23 18:45:13

阅读数 338

评论数 0

Spring in Action 4 读书笔记之使用标签创建 AOP

目录 1. 定义一个 aspect 2. 创建一个 around advice 在之前的读书笔记 Spring in Acton 4 读书笔记之 AOP 原理及 Spring 对 AOP 的支持 中,讲到 Spring 对 AOP 的支持包含四方面: S...

2017-01-23 18:43:26

阅读数 353

评论数 0

《spring实战第四版》的读书笔记

《spring实战第四版》的读书笔记 1 概述 《Spring实战第四版》描述了Spring4架构的设计,看完了以后,最大感觉是Spring的IOC与aop理念实在是太强大了,而且用注解来简化系统配置的想法也非常棒,整个架构简直就是MVC的典范 2 Spring之旅 2.1...

2017-01-23 18:41:56

阅读数 2109

评论数 0

JDK7与JDK8中HashMap的实现

JDK7中的HashMap HashMap底层维护一个数组,数组中的每一项都是一个Entry 1 transient Entry[] table; 我们向 HashMap 中所放置的对象实际上是存储在该数...

2017-01-22 21:37:45

阅读数 544

评论数 0

JVM初探——使用堆外内存减少Full GC

问题: 大部分主流互联网企业线上Server JVM选用了CMS收集器(如Taobao、LinkedIn、Vdian), 虽然CMS可与用户线程并发GC以降低STW时间, 但它也并非十分完美, 尤其是当出现Concurrent Mode Failure由并行GC转入串行时, 将导致非常长时间的...

2017-01-22 21:36:52

阅读数 931

评论数 0

浅谈WeakHashMap

Java WeakHashMap 到底Weak在哪里,它真的很弱吗?WeakHashMap 的适用场景是什么,使用时需要注意些什么?弱引用和强引用对Java GC有什么不同影响?本文将给出清晰而简洁的介绍。 总体介绍 在Java集合框架系列文章的最后,笔者打算介绍一个特殊的成员:Wea...

2017-01-22 21:35:57

阅读数 341

评论数 0

JDK动态代理详解

本文主要介绍JDK动态代理的基本原理,让大家更深刻的理解JDK Proxy,知其然知其所以然。明白JDK动态代理真正的原理及其生成的过程,我们以后写JDK Proxy可以不用去查demo,就可以徒手写个完美的Proxy。下面首先来个简单的Demo,后续的分析过程都依赖这个Demo去介绍,例子采用J...

2017-01-22 21:34:22

阅读数 381

评论数 0

kafka学习笔记:知识点整理

一、为什么需要消息系统 1.解耦: 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。 2.冗余: 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。许多消息队列所采用的”插入-获取-删除”范式中,在把一个消息从队列中删除之前,需要...

2017-01-22 21:33:03

阅读数 634

评论数 0

详解Java中的clone方法 -- 原型模式

Java中对象的创建 clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象。所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象。那么在java语言中,有几种方式可以创建对象呢? 1 使用new操作符创建一个对...

2017-01-22 21:31:41

阅读数 395

评论数 1

提高 Java 代码质量

高质量代码中往往缺陷更少!确保高的 Java 代码质量有两个步骤:尽早并经常地编写各个层次的测试用例,以及持续的监测质量状况。那么我们又该如何实践呢?本专题汇集了大量来自代码质量专家们的专业经验、最佳实践以及实用技巧,内容涵盖了软件测试理论、Bug 模式与代码诊断、代码静态分析、测试驱动、单元测试...

2017-01-22 21:30:04

阅读数 2143

评论数 0

40个Java多线程问题总结

前言 Java多线程分类中写了21篇多线程的文章,21篇文章的内容很多,个人认为,学习,内容越多、越杂的知识,越需要进行深刻的总结,这样才能记忆深刻,将知识变成自己的。这篇文章主要是对多线程的问题进行总结的,因此罗列了40个多线程的问题。 这些多线程的问题,有些来源于各大网站、有些来源...

2017-01-22 21:27:34

阅读数 415

评论数 2

Spring获取ApplicationContext方式,和读取配置文件获取bean的几种方式

Spring获取ApplicationContext方式 我自己常用的方法: 读取一个文件1 //创建Spring容器 2 ApplicationContext ctx = new ClassPathXmlApplicationContext(&qu...

2017-01-22 21:27:00

阅读数 2083

评论数 0

spring里头各种获取ApplicationContext的方法

为啥写这个文章呢?spring各个版本不同,以及和系统框架套在一起不同,导致获取的方式不同,网络上各种版本,太乱了,写获取方式的人都不写这个获取方式是在本地还是在WEB,在那种应用服务器下,在spring那个版本下,太过分了! 我这写一些,常见的,可能经常要用的版本; 首先了解,为什么...

2017-01-22 21:25:23

阅读数 433

评论数 0

性能指标TP99之我解

首先给出Google到的答案: The tp90 is a minimum time under which 90% of requests have been served. tp90 = top percentile 90 Imagine you have response time...

2017-01-22 20:55:11

阅读数 6382

评论数 0

CHROME开发者工具的小技巧

Chrome的开发者工具是个很强大的东西,相信程序员们都不会陌生,不过有些小功能可能并不为大众所知,所以,写下这篇文章罗列一下可能你所不知道的功能,有的功能可能会比较实用,有的则不一定,也欢迎大家补充交流。 话不多话,我们开始。 代码格式化 有很多css/js的代码都会被 min...

2017-01-22 20:47:44

阅读数 2741

评论数 1

不要全聚德!老北京人告诉你,该买什么“北京特产”带回家!

关注北京,请点击上方微信名订阅我们 生 活 一 手 掌 握 合作/投稿,请联系微信:bj1131 年终岁末,各路亲朋好友纷纷来京,亦或是在北京的小伙伴开始琢磨着回家,“买点儿啥特产”,最近成了掌北后台的热门话题。有经验的都知道,真空包装的全聚德“北京烤鸭”,...

2017-01-21 17:41:11

阅读数 7611

评论数 0

千丝万缕的FGC与Buffer Pool

本文是一次线上的FGC分析及原理剖析。通过本文,可以深入的了解FGC,堆外Buffer和Buffer Pool的设计。 1 背景 运维通知,线上系统一直在FGC,通过zabbix查看GC 的次数 再查看YGC和FGC空间占用情况 这里有几个疑问: ...

2017-01-20 21:57:58

阅读数 485

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭