Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 基于条件的Guice注入_Java_Web Services_Architecture_Inversion Of Control_Guice - Fatal编程技术网

Java 基于条件的Guice注入

Java 基于条件的Guice注入,java,web-services,architecture,inversion-of-control,guice,Java,Web Services,Architecture,Inversion Of Control,Guice,我对IoC容器很陌生,我计划在一个新项目中使用一个。不确定我是否真的会需要它,但架构可能会发展,所以很高兴知道这可以工作 该项目是一个使用Resteasy构建的web服务,它与Guice集成。我已经设置好了,它可以工作了。我的问题是如何选择接口的实现,因为基于一个变量可以有多个接口。例如,用户发送的参数。显而易见的解决方案是一个大型的switch/case语句,但我希望一个容器会有所帮助。我已经调查过辅助注射和guice工厂,但我无法将其应用到我的问题中 任何建议都会有帮助。我还没有与guice

我对IoC容器很陌生,我计划在一个新项目中使用一个。不确定我是否真的会需要它,但架构可能会发展,所以很高兴知道这可以工作

该项目是一个使用Resteasy构建的web服务,它与Guice集成。我已经设置好了,它可以工作了。我的问题是如何选择接口的实现,因为基于一个变量可以有多个接口。例如,用户发送的参数。显而易见的解决方案是一个大型的switch/case语句,但我希望一个容器会有所帮助。我已经调查过辅助注射和guice工厂,但我无法将其应用到我的问题中


任何建议都会有帮助。

我还没有与guice合作过,因此无法帮助解决特定于guice的问题

但一般的想法应该是使用工厂
Spring
提供了工厂bean,可以根据需要初始化bean

我相信
guice也应该有类似的东西。考虑使用这一点,应该是一个很好的实践。


通过谷歌搜索我找到了这个页面:我相信这是您应该考虑的。

mapbinder扩展正是您需要的: