魅力四射的“小玩意”——PicoContainer

Jon Tirsen在他的weblog里说,他看到一个叫PicoContainer的有趣项目,并立刻投身其中。这个自称“IoC(Inversion of Control)type 3”的微容器有什么吸引人的魅力?

PicoContainer / NanoContainer I''ve recently joined two new projects:
http://www.picocontainer.org

http://www.nanocontainer.org
The founders of the project are Paul (AltRMI, Enterprise Object Broker) and Aslak (XDoclet, MiddleGen). Actually they pair-programmed most of it at Paul''s place and a lot of beer was involved. The end result: a neat, simplistic and wonderfully TDDed piece of work. Joe (SiteMesh, QDox), my unit-testing guru, is also in on it.

It''s basically an Inversion-of-Control-container/framework/micro-kernel. Pico will be the simplistic micro-kernel and Nano will be a bunch of containers serving different purposes (most built on top of Pico).

I''m not an IoC-expert by any means, and, well, I didn''t know much about it before chatting with Paul and Aslak. The cool (and quite controversial) thing is that Pico (at least by default) implements style 3 IoC, which means constructors are used to define dependencies. Smart!

I will implement some Nanning support in Nano so that aspects can define dependencies on services and the container will resolve them properly, the aspects will also be able to aspectify the components transparently. The details are far from finalized, just a bunch of semi-digested ideas. I''ll give you a couple of use-cases though. An aspect implementing transparent persistence with Prevayler could retrieve it''s Prevayler-instance just by declaring it in its constructor:

public class PrevaylerAspect {  public PrevaylerAs

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索picocontainer、魅力四射、魅力四射软件、魅力四射舞蹈、魅力四射酒吧,以便于您获取更多的相关知识。

时间: 2024-12-09 15:33:51

魅力四射的“小玩意”——PicoContainer的相关文章

PicoContainer(Ioc容器)在测试用例中的应用(二)

本篇主要介绍PicoContainer的一些主要特性,很简单.很容易,但是很有效.喜欢英文的盆友也可以移步官方介绍,但是有些代码在新版本并不好使,还需要自己研究=.=!. 依赖注入 PicoContainer支持很多种注入方式,比如构造器注入.setter注入.annotation注入等等很多了.我们常用的annotation注入和构造器注入就可以了. 1.annotation注入方式 public class TestRandomWriteAndRead extends TestWriteAn

PicoContainer(Ioc容器)在测试用例中的应用(一)

PicoContainer是一个轻量级Ioc(Inversion of Control)容器, 最重要的特征是它的尺寸,它没有拦截器.AOP 或相似类型的服务,但它具有完整的依赖注入容器. PicoContainer 支持 Java 配置技术,而不支持 XML 配置技术,也就是说容器内各组件的依赖规则都是通过java程序来配置的. 为什么要使用ioc容器 话说第一天我们要完成一个数据库的读测试,读的行为分别为顺序和随机.按照传统的做法我们会写两个case分别实现顺序读和随机读过程,很简单我们一会

90年代我们曾经热爱过的高科技小玩意

假期我们可以回家和亲人团聚,这意味着我们将翻开相册,回顾往昔. 我们现在回顾一下20世纪90年代以来我们曾经热爱过的高科技小玩意,纪念这种怀旧的感觉.上世纪90年代互联网真正开始改变我们的生活,我们将永远值得纪念.当时,我们佩戴的高科技产品看起来很酷,我们穿着法兰绒和高腰牛仔裤. 下面是我们深深地怀念的一些高科技小玩意. 1.看过<小鬼当家2>(Home Alone 2)后,每个人都想要一个卡带录放音机(Talkboy).这个小东西可以让你录制和播放任何你想要重复听到的声音,而且你还可以加快或

组图:缪斯乐队献艺主唱马修-贝拉米魅力四射

缪斯乐队领奖 贝拉米动情演绎 贝拉米深情演唱 贝拉米呐喊 贝拉米银色闪亮 缪斯乐队演唱经典歌曲 缪斯乐队火爆献艺 缪斯乐队魅力四射(点击小图看大图)点击此处查看其它图片 新浪娱乐讯 北京时间2月14日早上午9时(当地时间13日晚),第53届格莱美颁奖礼在美国洛杉矶举行,群星献唱上演视听盛宴.新浪娱乐全程图文直播此次颁奖礼.缪斯乐队火爆献艺,主唱马修-贝拉米银装闪闪.魅力十足.(图库供图)

魅族23日发布会产品全曝光黄章的小玩意你喜欢吗?

随着魅族23日发布会的临近,网上 曝光的资料越来越多,之前黄章秒删的做了一些给年轻人的小玩意似乎也付出了水面.日前一张内部PPT的曝光也让我们了解到更多的信息,魅族将在23日发布会发布魅蓝note和魅蓝智能寻回器,而魅蓝智能寻回器可能就是那个给年轻人的小玩意哦.根据图片显示,魅族将有两款产品于12月23日发布,分别为 魅蓝Note和魅蓝智能寻回器,魅蓝Note售价999元,智能寻回器售价299元.另外2015年第一季度的两款产品分别为魅蓝路由器售价999元以及 魅蓝手机售价799元.而魅蓝手表.

张学友杭州开唱魅力四射引万人大合唱(组图)

张学友坐直升机 歌神唱足3个半小时 肥姐玩偶出现 现场大荧幕 浪漫舞台 舞台造型多变 演唱会主题 张学友戴礼帽亮相 雨中曲 引全唱大合唱 张学友动画短片 张学友老年造型(点击小图看大图) 点击此处查看其它图片 新浪娱乐讯 昨夜(3月6日),"歌神"张学友在时隔3年之后,再次登上杭州黄龙体育中心的舞台,为广大歌迷倾情献唱.而现场近万名观众也随着"歌神"的动听歌喉,与他一同回顾了其曾经走过的音乐历程.尽管当日杭州下起了小雨,歌迷的热情依旧不减, 天王魅力可见一斑. 歌神

前端的小玩意(9.5)——做一个仿360工具箱的web页面(完结篇,可以跑起来的工具箱)

DEMO网址: http://jianwangsan.cn/toolbox (五)添加.点击和移动的逻辑 我反思了一下,在(四)中我写的并不好,事实上,无论是大按钮,还是被添加到我的工具,或者是添加到常用工具栏,他都是一个按钮,因此,应该共享状态,即他们属于同一个tool实例,并能互相影响.   需求分析: 在重写Tool类之前,需要明确分析按钮的逻辑. 在全部工具页面: ①当按钮未被添加时,鼠标移动上去会有添加按钮显示: ②当按钮未被添加时,鼠标无论点击按钮本身还是点击添加按钮,都执行添加逻辑

前端的小玩意(4)自定义checkbox或者radio的外观

原理: 通过隐藏原有的(调透明度和绝对定位),然后用一个新的图标来覆盖上去 CSS代码: .radio { /*这个描述的是输入框的基本样式,透明,绝对定位,浮动在最下*/ opacity: 0; position: absolute; z-index: -1; /*这行是让原图标被其他的遮挡,避免挡住其他按钮影响事件触发*/ <span style="font-family: Arial, Helvetica, sans-serif;">/* </span>o

前端的小玩意(9.4)——做一个仿360工具箱的web页面(自动生成所有图标,对图标添加响应逻辑)

DEMO网址: http://jianwangsan.cn/toolbox (四)制作JSON,自动将图标填充进所有工具 首先是JSON,因为工具很多,所以JSON内容很长. 具体而言,JSON是一个数组中的对象(只有这一个对象),他有两个属性:BigImg和CommonImg. 这两个属性都是数组类型: BigImg里面,他用于存放最上面的三个大图标: CommonImg里面,存放其他工具图标. BigImg单个数组元素的结构如下: [javascript] view plain copy