有谁知道
Spring JAR(以及在哪里找到它!)包含Spring所谓的“Meta-annotations”的功能.正如
this文章所示,这些很酷的“新”(好吧,sorta)结构允许这样的代码:
@Service @Scope("request") @Transactional(rollbackFor=Exception.class) @Retention(RetentionPolicy.RUNTIME) public @interface MyService { } @MyService public class RewardsService { … }
基本上,我有一个目前不使用Spring的Swing应用程序.如果我可以使用这些注释,我会突然改变需求,这将变得极其简单.
所以我只是在寻找能够找到这种功能的最小,微创的Spring JAR.如果绝对需要,我可以使用整个Spring JAR,但这将是一个非常严厉的解决方案.如果Spring发布了一个具有较小范围功能的小型JAR,那将是很好的.
我正在浏览Maven Repo并看到spring-core包含一个叫做的包:
org.springframework.core.annotation
但是在检查API文档时,它似乎并不是我需要的……
辅助问题:甚至可以将这些元注释用作独立构造,还是必须将它们与Spring DI或AOP或Spring框架的其他主要部分一起使用?
提前致谢!
解决方法
您想要的注释将与它相关的jar.例如,注释org.springframework.transaction.annotation.Transactional将位于spring-transactions工件中.
元注释与常规注释并没有什么不同,除了Spring现在检测注释上的注释,而之前没有注释.注释是否“起作用”取决于正在寻找它们的内容(在本例中是Spring环境中的内容).
有关进一步阅读,请参阅Spring框架参考中的Annotation-based container configuration.