Java / Scala的简单反转控制框架

时间:2010-05-05 18:53:16

标签: java dependency-injection inversion-of-control autofac

我正在寻找一个简单易用的IoC容器,用于用Java / Scala编写的GUI应用程序。

它应支持约定优于配置,生命周期管理,代码配置(最好不需要任何XML),并尽可能在编译时检查依赖关系。与Autofac类似的东西将是完美的。

4 个答案:

答案 0 :(得分:12)

听起来你需要像Google Guice这样的东西。

过去常常有一些用于Java的IoC容器(例如PicoContainer),但它们已经在Spring的阴影中存在多年了。尽管如此,Spring可能有点超过您的需求。

Guice重新开始了一些健康的比赛。

答案 1 :(得分:5)

如果你要使用纯Scala,你可以看一下Sindi: http://aloiscochard.github.com/sindi

注意:我是Sindi项目作者

答案 2 :(得分:3)

Google Guice相当不错:

http://code.google.com/p/google-guice/

你也没有任何XML gunk,你可以以编程方式创建模块并在其中编写一些内容,例如将接口(TransactionLog)绑定到实现类(DatabaseTransactionLog):

public class BillingModule extends AbstractModule {
  @Override 
  protected void configure() {
    bind(TransactionLog.class).to(DatabaseTransactionLog.class);
  }
}

答案 3 :(得分:1)

PicoContainer是一个高度可嵌入的,全方位服务的控制反转控制(IoC)容器,用于组件遵循依赖注入模式。该项目始于2003年,是建设者注入自动布线的先驱。它也是开源的,因此可以免费使用。许可证是BSD,因此您可以安全地将其用于商业或其他开源软件。