现在,我正在使用spring remoting的RMI/SOAP/JMS/Hessian/Burlap/HttpInvoker导出器公开我的应用程序的服务层。我想要的是允许用户以某种方式定义他们希望启用这些远程处理机制中的哪一个(而不是启用所有这些机制),然后只创建这些导出器bean。
我希望spring的应用程序上下文xml支持在xml的各个部分周围放入条件块。然而,到目前为止,我所看到的标准spring发行版中没有任何东西允许您这样做。
有没有其他方法可以实现我想要做的事情?
发布于 2012-02-12 23:12:55
您可以通过使用Spring @Configuration bean来实现这一点,这样您就可以在java代码中构造bean。(参见http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/beans.html#beans-java)
@Configuration
public class AppConfig {
@Bean
public MyService myService() {
if ( userSettingIshessian ) {
return new HessianExporter();
}else {
return new BurlapExporter();
}
}
}当然,您需要从某个地方获取用户设置,系统参数可能很简单,或者是配置文件或其他文件。
https://stackoverflow.com/questions/9248237
复制相似问题