关于如何使用Spring里@AliasFor注解进行注解的封装

不知道大家每次使用Spring boot的时候有没有看过它启动类里

@SpringBootApplication这个注解呢?众所周知,这个注解是一个复合注解,但是注解是不能继承元注解的属性的,也就是说,我在类扫描的时候,拿到的注解的属性值,依然是元注解的属性值,而不是你定义的注解的属性值

关于如何使用Spring里@AliasFor注解进行注解的封装_第1张图片

那么它是怎么做到使用别的注解的属性的呢?玄机就在这个
@AliasFor注解上,它可以指定某个元注解里的属性,并将其重新命名.这样我们可以自由的将Spring里各个注解再进行一遍封装,下面给大家看个Demo,
像这样封装下我们的注解既有了@Service的作用也有了事务注解的作用,因为事务注解的value不需要指定,所以将别名指定为@Service的value

关于如何使用Spring里@AliasFor注解进行注解的封装_第2张图片

最搞笑的是@Service注解也是用的@Compont的value属性

关于如何使用Spring里@AliasFor注解进行注解的封装_第3张图片

最后像这样使用就行了,提醒下,如果是Spring boot的话一定要在启动类上标上
@EnableTransactionManagement注解这样才可以启用注解事务哦

转载于:https://www.cnblogs.com/yangfeiORfeiyang/p/9464914.html

你可能感兴趣的:(关于如何使用Spring里@AliasFor注解进行注解的封装)