我对别名的使用感到困惑.我确实理解别名是什么以及它是如何被使用但我不知道它如何与在bean定义上使用名称有什么不同.
<bean id="xyx" name="abc,def" .. />
<alias name="xyx" alias="pqr"/>
Run Code Online (Sandbox Code Playgroud)
当我可以使用abc或def时为什么别名?
Mar*_*luk 26
在我看来,bean别名在大型系统中很有用,在大型系统中你无法操作bean名称.您可以选择为您的系统部分创建自己的名称(别名)...
来自Spring文档(3.0.x) http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/htmlsingle/
...有时候需要给一个bean多个名字,也称为bean别名......
因此创建多个名称或/和别名是一回事.
一个用例可能是你想要定制一些已经在模块化应用程序中定义的bean(例如每个模块都是一个spring项目),bean可能由第三方框架/ API甚至你的团队定义.在这种情况下,您希望只在您的spring项目内部调用自定义版本而不更改其他模块(项目),这样做只需在spring配置中添加别名,这确实是一个强大的功能:
<alias alias="globalBeanService" name="customizedBeanService" />
Run Code Online (Sandbox Code Playgroud)
因此,每当spring找到对globalBeanService的调用时,它将在您的特定模块中为您注入customizeBeanService.没有这个功能,你应该仔细检查所有类并手动修改bean!
| 归档时间: |
|
| 查看次数: |
46438 次 |
| 最近记录: |