携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第27天,点击查看活动详情
上一篇文章中我们介绍了关于方法注入的实现之java 代码的写法。我们发现之前文章中定义的getNewsFetchBean() 方法已经满足了要求,于是我们进行下一步需要做的:在配置文件中对这个类进行配置。
方法注入的实现之配置文件的写法要求
配置文件其实也是有相应的格式要求的,对应的代码如下:
<bean id = "newsFetchBean" class = "xxxxxx.NewsFetchBean" singleton = "false"/>
<bean id = "newsPersister" class = "xxxxxx.NewsPersister">
<lookup-method name = "getBean" bean = "newsFetchBean"/>
</bean>
我们发现,不同的就是<lookup-methon> 属性标签。它的name 属性指定了需要“方法注入”的方法名;bean 属性指定的是需要注入的对象。
于是,在这之后,当我们再次调用getNewsFetchBean 方法的时候,容器就会根据配置文件中的配置信息,知晓这个配置的意义,就会每次都给出一个全新的NewsFetchBean 实例了。
在这之后我们再次运行一下之前的代码,就会发现每次返回的信息是都是不同的了,说明“prototype”类型的scope 的配置初衷实现了。
在我们之前的代码中,可以发现,NewsFetchBean 其实是注册到容器当中的。但是实际上,我们可以在相应的方法中按照需要自己进行实例化,不一定非得从容器中获取。
另外,在我们执行之前的那部分代码的时候,给出的对象引用结果每次都是不同的,并没有一个固定的数字。我们只需要关注每次输出的几个结果是否相同即可,这就可以说明问题了。
总结
这篇文章结合上一篇文章,一起介绍了“方法引入”的概念及具体使用方法,包括java 代码的写法要求和配置文件的写法要求。读者可以结合上面具体的例子来进行思考记忆,在之后的工作中,如果遇到合适的场景,就可以进行适当的应用了。