GWT或Spring中的依赖注入

时间:2012-07-10 08:52:42

标签: gwt gwt-2.4

我是新的GWT。我有一个项目,我使用GWT和Spring作为我们的技术来实现。 我已经通过以下链接完成了与GWT的Spring集成。 http://technophiliac.wordpress.com/2008/08/24/giving-gwt-a-spring-in-its-step/ https://docs.google.com/document/pub?id=1USHYx9cB3B1s1zM4dlkzEZ759D3lEfavn_dDewvBkaA 在这里,我可以将依赖注入仅应用于具有实际业务(远程服务)功能的服务器端类。

我的问题是,

  • 如何为所有其他类应用依赖注入 在客户端,共享,查看,演示者包中?

  • 哪种依赖注入更好?我的意思是GWT提供了两种依赖注入机制

    1. guice用于在服务器端实现依赖注入

    2. gin用于在客户端实现依赖注入。

    3. 和Spring依赖注入。

    4. 哪一个更好选择?无论是GWT依赖注入还是 Spring依赖注入?或两者兼而有之?

请回复我。

谢谢,

萨里萨。

3 个答案:

答案 0 :(得分:5)

GWTP通过google-guicegoogle-gin大量使用依赖注入。因此,您需要将这些库添加到项目中。

google-guice是服务器端的DI,而gin是客户端的DI。

GIN(GWT INjection)为Google Web Toolkit客户端代码带来了自动依赖注入。

  
    

哪一个更好选择? GWT依赖注入还是Spring依赖注入?或两者兼而有之?

  

对于客户,您只有一个选项是“杜松子酒”。因为guice& spring都在服务器端使用。还有spring和guice的组合,仅适用于服务器,不适用于客户端。

答案 1 :(得分:0)

GWT不支持Spring,因此您必须在客户端使用GIN。

在服务器端组合Guice和Spring毫无意义,因为Spring托管bean与Guice托管bean不兼容。

所以你必须问问自己在服务器端要使用哪个DI框架。两者都做得很好。 Guice更加轻量级,Spring提供了许多额外的模块。

我认为在服务器端使用Guice没有任何优势,因为您在客户端使用GIN。

答案 2 :(得分:0)

GWT客户端依赖注入只能由Gin框架提供。在这种情况下,如果您想使用GWT最佳实践(DI,MVP等)并测试您的客户端代码,您应该查看this question。它解释了如何在Guice的帮助下编写轻量级JRE模拟测试。因此,如果您开始使用Gin,则不应该避免使用Guice。没有任何理由在客户端使用Gin,在服务器上使用Spring DI。