Java 弹簧注射问题

Java 弹簧注射问题,java,spring,dependency-injection,Java,Spring,Dependency Injection,我有一个静态类ResourceFetcher,带有一个静态方法fetchResource(字符串引用)。我想将它返回的资源注入另一个类JobRunner。有人能指定最干净的方法吗 我不想将ResourceFetcher传递到JobRunner。事实上,我有一个带有一组键的enum,我需要将键值对的映射传递到JobRunner,其中的值是通过调用fetchResource获得的 我想澄清的一点是,ResourceFetcherclass'fetchResource返回类型为String 提前感谢。

我有一个静态类
ResourceFetcher
,带有一个静态方法
fetchResource(字符串引用)
。我想将它返回的资源注入另一个类
JobRunner
。有人能指定最干净的方法吗

我不想将
ResourceFetcher
传递到
JobRunner
。事实上,我有一个带有一组键的
enum
,我需要将键值对的映射传递到
JobRunner
,其中的值是通过调用
fetchResource
获得的

我想澄清的一点是,
ResourceFetcher
class'
fetchResource
返回类型为
String


提前感谢。

如果ResourceFetcher上的
fetchResource
方法是静态的,为什么JobRunner不能简单地引用它呢?我认为没有必要注入ResourceFetcher。


<bean id="resource" class="com.x.y.ResourceFetcher" factory-method="fetchResource">
   <constructor-arg value="someReference"/>
</bean>

然后,您可以将
资源
注入到
JobRunner
bean中。

太好了。这也是我所期待的。如果工厂方法返回的对象不是ResourceFetcher类的类型,该怎么办?@Kurioskat:bean类型将是该方法返回的任何类型,而
ResourceFetcher
的类型与结果无关。如果ResourceFetcher想将类路径中的10个sql文件转换为sql字符串,这将是一种通用的方法?确切地说,我在JobRunner-MapQueryTempl中有一个静态映射,其中sql查询从ResourceFetcher获取的每个值都是字符串。我想知道这是不是一种正确的方式。