Google Guice +策略模式+反思

时间:2014-02-22 16:55:52

标签: java reflection dependency-injection guice

我熟悉Google Guice,至少是基础知识。我现在使用带注释的策略模式(回答here)来基于目标设备格式化消息。

我有一个名为MessageFormatter的接口。

public interface MessageFormatter{
    public String format(String input);
}

我有很多这种界面的实现。基本上这些实现基于目标显示格式化短消息 - 大屏幕,手机等。从另一个服务器获取消息。

我想做的是将一台服务器上的格式化程序发送给另一台服务器。通过发送格式化程序,我的意思是发送MessageFormatter接口的实现。我已经知道如何使用反射在运行时加载一个类并使用它。

我需要做的是在运行时插入这些实现,使容器知道这些新类,注入它们而不是旧类。这可能与Google Guice有关吗?

1 个答案:

答案 0 :(得分:0)

Guice拥有对OSGi的第三方支持,允许使用Guice插入在运行时动态变化的服务。有一些OSGi容器可以监视您的文件系统,以查找包含要加载的其他类文件的新包(例如Apache Felix File Install)。

这是一些额外的资源