为了响应伟大的“抵制中英文夹杂的资本主义不良思潮”运动,本文将全部用中文书写(代码暂时例外)。
最近工作需要,发现要写代码扩展“蛛丝”来实现一个春天遗留系统的移植。基本上就是围绕着春天的“应用上下文”和蛛丝的绑匪/模块来上下其手。
在测试的的时候,习惯性地选择用“简单摹客”来测试行为。摹客春天的应用上下文和豆子工厂真是简单啊:
ListableBeanFactory beanFactory = mock(ListableBeanFactory.class);
expect(beanFactory.getBeanDefinitions()).andReturn(beanNames);
replay();
...
verify();
但是在摹客蛛丝的绑匪的时候遇到了麻烦。假设我要纪录这么一段行为期待的话:
binder.bind(List.class).annotatedWith(Names.named("test")).to(ArrayList.class).in(Singleton.class);
知道摹客的期待代码会是什么样子吗?给大家瞧瞧:
Binder binder = mock(Binder.class);
AnnotatedBindingBuilder annotatedBuilder = mock(AnnotatedBindingBuilder.class);
LinkedBindingBuilder linkedBuilder = mock(LikedBindingBuilder.class);
ScopedBindingBuilder scopedBuilder = mock(ScopedBindingBuilder.class);
expect(binder.bind(List.class)).andReturn(annotatedBuilder);
expect(annotatedBuilder.annotatedWith(Names.named("test"))).andReturn(linkedBuilder);
expect(linkedBuilder.to(ArayList.class)).andReturn(scopedBuilder);
scopedBuilder.in(Singleton.class);
哈哈,爽到了吧?这还是就对应一句蛛丝文档所谓的“嵌入式领域特殊语言”。要是多来那么几句,那才叫真爽啊。
为了避免爽到高潮,我就写了一个小动态代理来包装简单摹客。用了这个包装之后,期待代码就变成了简单的:
Binder binder = mockBinder();
binder.bind(List.class).annotatedWith(Names.named("test")).to(ArrayList.class).in(Singleton.class);
这个代理代码写起来不是很难。因为代码属于公司产权,所以就不贴了。不过,是不是只有我遇到过这种需要摹客蛛丝的绑匪的需求呢?
分享到:
- 2007-10-11 10:45
- 浏览 4291
- 评论(1)
- 论坛回复 / 浏览 (1 / 1738)
- 查看更多
相关推荐
3ds max蛛丝插件CobwebsV6
悦目金蛛丝蛋白TuSp1重复模块特征,王金雷,陈格飞,蜘蛛丝是一类机械性能优良的蛋白聚合纤维材料,利用蛋白质工程技术合成蜘蛛丝蛋白原液纺丝再仿制蛛丝成为重要的研究领域,然而蛛
max 特效插件 用于制作灰尘 做旧等效果
通过正交实验对RGD一蛛丝蛋白基因工程菌高密度发酵条件进行优化.选择pH、温度、诱导剂、前体物甘氨酸/丙氨酸4因素,分别在3个水平上进行考察.当茵体密度OD800nm为35左右时,添加IPTG诱导5h,确定了发酵诱导条件为...
在这三个物种中,蜘蛛网的特征性氨基酸峰位于2871至2975 cm-1之间,分别属于L-甘氨酸,L-丙氨酸,L-谷氨酰胺和L-脯氨酸。 线由主要由酰胺,丙氨酸和甘氨酸组成的保护层组成。 围绕轴向纤维的原纤维主要由酰胺II...
分析了大腹圆蛛牵引丝、蛛网框丝和包卵丝的氨基酸组成,研究了蜘蛛丝氨基酸组成与纤维内分子排列状态以及分子结构的关系,研究表明,不同功能蜘蛛丝的氨基酸组成存在较大的差异,总的说来,大腹圆蛛丝中大侧基氨基酸含量...
而这个时候就会发现老的坏处在于资料都是半截入土,拍一拍烟尘四起,抖一抖蛛丝乱飞的玩意。 现在做这个的基本都是用的SerialPort这个类,而这个类的最新更新已经有一段岁月,所以本人在下载了这个东西之后,费了...
以甲酸为溶剂,制备质量浓度为70g/mL基因重组蛛丝蛋白纺丝液,分别以甲醇、硫酸铵为凝固浴,经一段拉伸、二段拉伸制备仿生纤维,分析仿生纤维的水溶性、密度、比强度等物理和机械特性,并考察加入高分子材料聚乙烯醇...
你不能保护你所不知道地"已经成为安全圈地一句名言,即使部署再多地安全防御设备仍 然会产生"不为人知"地信息,在各种不同设备产生地海量日志中发现安全事件地蛛丝马 迹非常困难.而大数据技术能将不同设备产生地海量...
蛛丝宝库(普通) 3104 致死症(普通) 3204 Catalepticon(硬) Tera-Guide OmóduloDungeons指南最常发布的新闻,Mensagens na tela,marcadores deáreade ataque emecânicados boses。 DisponívelEM语...
jdk11中文文档CHM
jdk1.8中文文档CHM
maven依赖 <groupId>io.jeo <artifactId>proj4j <version>0.1.1 </dependency>
geotools相关jar包集合,包括多个版本,可以根据需要自行导入使用
geotool10.0相关jar包
geotools-18.1相关jar包