轻量级开发的成功秘诀,第 4 部分: 轻量级容器的比较
2009-11-11 00:00:00 来源:WEB开发网将该服务暴露在 XML 文件中,如下所示:
清单 3. 将该服务暴露在 XML 文件中<module id="examples" version="1.0.0">
<service-point id="Adder"
interface="org.apache.hivemind.examples.Adder">
<create-instance
class="org.apache.hivemind.examples.impl.AdderImpl"/>
</service-point>
</module>
然后,其他应用程序就可以使用该服务了,如下所示:
清单 4. 其他应用程序可以使用该服务Registry registry = RegistryBuilder.constructDefaultRegistry();
Adder adder = (Adder) registry.getService("examples.Adder",
Adder.class);
... adder.add(arg0, arg1)
注意,HiveMind 的模块让您可以将多个服务组合到一起。如果您需要向容器中的服务添加功能,可以使用拦截器:
清单 5. 使用拦截器添加功能<module id="examples" version="1.0.0">
<service-point id="Adder"
interface="org.apache.hivemind.examples.Adder">
<create-instance
class="org.apache.hivemind.examples.impl.AdderImpl"/>
<interceptor service-id="hivemind.LoggingInterceptor"/>
</service-point>
</module>
PetClinic 应用程序 (Spring)
Spring 处理事情的方法有些不同。因为 Spring 框架不带有简单的应用程序,我从我的书籍 Spring: A Developer's Notebook 中选择了一个。您可以从 O'Reilly Media 获取该示例代码。解压示例 4,它展示了一个用于 RentaBike 商店的带有属性的 CommandLineView 对象,该对象最终成为该应用程序的数据访问对象。
更多精彩
赞助商链接