![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
源码解读
dennis_zane
这个作者很懒,什么都没留下…
展开
-
org.springframework.core.io包的类图
org.springframework.core.io包中主要是各样的Resource类,Spring的 Resource 接口是为了提供更强的访问底层资源能力的抽象。具体的用法参考spring reference。这个包的类图非常简单,已经有人画的很清晰了,我直接拿过来,来自:Spring代码赏析:Resource类层次 相当巧妙的地方在于,为何AbstractResource的...2007-04-05 09:23:00 · 83 阅读 · 0 评论 -
JUnit源码分析(一)——Command模式和Composite模式
JUnit的源码相比于spring和hibernate来说比较简单,但麻雀虽小,五脏俱全,其中用到了比较多的设计模式。很多人已经在网上分享了他们对JUnit源码解读心得,我这篇小文谈不出什么新意,本来不打算写,可最近工作上暂时无事可做,那就写写吧,结合《设计模式》来看看。 我读的是JUnit3.0的源码,目前JUnit已经发布到4.0版本了,尽管有比较大的改进,但基本的骨架不变,读...2007-04-05 15:10:00 · 177 阅读 · 0 评论 -
JUnit源码分析(二)——观察者模式
我们知道JUnit支持不同的使用方式:swt、swing的UI方式,甚至控制台方式,那么对于这些不同的UI我们如何提供统一的接口供它们获取测试过程的信息(比如出现的异常信息,测试成功,测试失败的代码行数等等)?我们试想一下这个场景,当一个error或者exception产生的时候,测试能够马上通知这些UI客户端:发生错误了,发生了什么错误,错误是什么等等。显而易见,这是一个订阅-发布机制...2007-04-05 17:19:00 · 120 阅读 · 0 评论 -
JUnit源码分析 (三)——Template Method模式
在JUnit执行测试时,我们经常需要初始化一些环境供测试代码使用,比如数据库连接、mock对象等等,这些初始化代码应当在每一个测试之前执行并在测试方法运行后清理。在JUnit里面就是相应的setUp和tearDown方法。如果没有这两个方法,那么我们要在每个测试方法的代码内写上一大堆重复的初始化和清理代码,这是多么愚蠢的做法。那么JUnit是怎么让setUp和tearDown在测试执行前后...2007-04-06 09:54:00 · 64 阅读 · 0 评论 -
JUnit源码分析(四)——从Decorator模式说起
其实我这系列小文,名为源码分析,其实是自己读《设计模式》的读书笔记。Decorator模式在java的IO库中得到应用,java的IO库看起来复杂,其实理解了Decorator模式再回头看可以很好理解并使用。 Decorator模式,也就是装饰器模式,是对象结构型模式之一。1.意图:动态地给一个对象添加一些额外的职责。给对象添加功能,我们首先想到的是继承,但是如果每增一个功能都...2007-04-06 12:39:00 · 79 阅读 · 0 评论 -
org.springframework.core.styler包解读
这个包的说明是:Support for styling values as Strings, with ToStringCreator as central class.这个包简单来说就是提供一个pretty-printing功能的辅助类,而ToStringCreator就是用于产生一个可以输出经过美化的value信息的toString()方法。使用方法参照spring的Test可以看到...2007-04-06 15:18:00 · 80 阅读 · 0 评论