这个问题已经存在很多年了,因为 Spring 开始大量转向基于注释的配置(如果我没记错的话,它被称为约定配置)。基于注释的配置就像一场蔓延整个行业的丛林大火,很快就成为常态。但是,“XML vs. Annotations”这个问题一直存在。
从 1.1 版开始,我就一直在使用 Spring 世界,当时注解还不是一回事。我知道如何编写 XML,也知道如何配置应用程序以满足我的需要。从那时起,每当我在 Spring 中编写应用程序时,我都会问自己“XML 或注释”,直到最近我才真正得到一个好的答案。虽然您会 在 Google 中找到大量关于此主题的帖子 ,但当您搜索此内容时,只有少数几篇真正能为您提供公正的意见。
我开始开发一个需要一些非常灵活的配置选项的应用程序,在我深入研究之前,我不得不再次做出这个决定,这次我想保持简单,我的理由是……
-
在任何稳定且定义应用程序核心结构的地方使用注释。任何需要更改代码的内容都可以作为注释。
当您知道可能需要更改应用程序的行为而不需要重新编译和部署代码时,请使用基于 XML 的配置。
这就是我为我的团队保留它的简单程度。一旦定义了这个原则,工作就只完成了一半。但我们很快就会到达那里。