相关开源项目
HiveMind:这是一个apache 的子项目微核心IoC框架.
JBoss Microcontainer:JBoss Microcontainer是一个轻量级IOC容器,它的思想类似于Spring,Pico Container与Plexus。JBoss Microcontainer可被用在任何应用程序中而不需要JBoss应用服务器。 它是JBoss Seam和JBoss Embeddable EJB 3.0项目的基础支柱。这里有一篇英文简介文章。
Carbon:Carbon是一个轻量级的组件模型与企业级的服务框架.Carbon是在以下原则上进行构建:创建一个更加灵活的框架通过一个分离,以元数据为中心的系统,鼓励关系的分离,从而使得代码在一个复杂,动态的操作环境中更容易维护与重复利用等.
Peapod:Peapod是一个轻量级的Type3构造子注入IOC容器.
JICE:JICE是一个基于XML用于构建和配置Java应用程序的工具。它规定一个XML词汇(XML-vocabulary )来配置一个Java程序中的对象并提供一个工具来处理XML数据生成Java实例。JICE支持反转控制/依赖注入.它利用构造函数来注入对象并设置对象的属性。然而JICE不单是一个IOC容器,除了可以设置setter方法,还可以在初始化的时候调用对象中的任何方法。JICE可以构造复杂的对象graphs。
Annocon:Annocon是一个基于Java 5注释的反转控制(IOC)容器。它使用注释来定义,配置和关联应用程序组件。这种方式优越于那些基于XML的容器,因为不需要学习XML。
Coinjema:Coinjema这个组件通过AspectJ与Groovy提供了一种强大的依赖注入机制。假如你厌烦一大堆XML配置文件,和需要掌握复杂工厂类与容器的时候,这个non-API的解决方案将一定适合你。
Butterfly Container:Butterfly Container是一个依赖注入容器(IOC)。它比Spring、Pico、Guice更小,并且更加灵活,更加易于使用。Butterfly Container使用一种简单,灵活,类似于Java的配置语言来代替XML。
NanoContainer:PicoContainer和NanoContainer是一脉相承的,NanoContainer是在PicoContainer的脚本实现,其中脚本包括:Groovy, BeanShell,Jython,Rhion,XML等.NanoContainer Servlet就是在NanoContainer的基础上,把容器应用于Web工程.现在,提倡轻型容器,一部分原因也是为了J2EE的程序简单化(包括开发,部署等).
PicoContainer:PicoContainer是一个“微核心”(micro-kernel)的容器。它利用了Inversion of Control模式和Template Method模式,提供面向组件的开发、运行环境。PicoContainer是“极小”的容器,只提供了最基本的特性。