2012-01-09 97 views
0

在开发应用程序时,我遇到了一个不清楚该如何继续的情况。我的应用程序不是一个非常大的实现,所以不想添加任何DI容器(Spring/Guice)。创建通用对象工厂

我有我的控制器层从我需要调用我的服务层,我有两种方法来创建一个ServiceObject的实例。

  1. 使用简单的new算子。
  2. 创建工厂图层。

我知道工厂模式,但我的目的是创建一个通用的ObjectFactory,它应该足以创建和注入给定的对象。

类似于Spring所做的事情(不是那么多)就像在我的控制器类中公开一些setter方法,并让该工厂注入指定的对象。

在这方面的任何起始点指针会有所帮助

在此先感谢

回答

1

我的应用程序是不是一个非常大的执行力度,所以不要想添加 任何DI容器(春/吉斯)

我觉得你的应用程序的大小是不是你不应该考虑(提供它真的不是一个HelloWolrd :))。正如artbristol表示,使用已有框架的关键在于你不会在自己的实现中犯下错误,其他人已经做了并在稍后解决了。我不知道你是否有实际的Spring知识(但是我们已经知道你很熟悉背后的概念),所以我建议你看一下这个主题的一些基本教程,你会看到你是多么容易可以开始使用Spring。

http://www.vogella.de/articles/SpringDependencyInjection/article.html

快乐编码!

1

只需使用Spring或Guice的,无论你是比较熟悉的。它们都非常轻量级,其他人将能够更容易地理解您的应用程序,而不是如果您推出自己的依赖注入。你自己的实现最终会看起来像其中之一,但功能更少,bug更多。

+0

我同意这一点,但由于应用程序很小,所以说10个服务类,所以我不想添加额外的依赖。由于许可证问题,弹簧不在我的列表中:( – 2012-01-09 10:15:38

+1

Spring有一个非常宽松的许可证, Maven可以很容易地将依赖关系绑定到你的应用程序中,如果你坚持自己动手,只需公开setter方法,并在应用程序启动时一次性“连接”所有'bean',这将允许你添加Spring稍后进行最小的更改。 – artbristol 2012-01-09 10:35:46

相关问题