spring注解开发

@Componet

组件,放在类上,说明这个类被spring管理了,就是bean

类前加这个注解,相当于bean

等价于<bean id="xxx" class="xxxxxx"/>

名字默认是类的名字的小写

@Value("xxx")

相当于

<bean id="xxx"  class="xxxxxx">

<property name="xxx" value="xxx"/>

</bean>

也可以放在set方法上

@Autowired

直接在属性上用即可

使用@Autowired可以不用再编写set方法,前提是你这个自动装配的属性再ioc(spring)容器中存在,且符合byname

@Autowried(required = dalse)则这个属性可以为null,否则不允许为空

如果@Autowired自动装配的环境比较复杂,自动装配无法通过一个注解@Autowired完成的时候,我们可以使用@Qualifier(value="xxx")去配置@Autowired的使用,指定一个唯一的bean对象

@Resource

作用和@Autowired一样,可以在后面(name="xxx”)来指定唯一的对象

@Autowired和@Resoure区别

都是自动装配,都可以放在属性字段上

@Autowired是通过byType的方式实现,而且必须要求这个对象存在

@Resoure默认通过byname的方式实现,如果找不到名字,则通过byType实现,如果两个都找不到就报错

执行顺序不同

@Nullable

字段标记了这个注解,说明这个字段可以为null;

@Scope("xxx")

xxx为singleton就是单例模式

xxx为prototype就是原型模式

@Aspect

放在类前,标注这个类是一个切面

@Before("execution(* xxxxxx.*(xxx))")

方法执行前

@After("execution(* xxxxxx.*(xxx))")

方法执行后

@Around("execution(* xxxxxx.*(xxx))")

环绕增强

在环绕增强中,可以给定一个参数,代表我们要获取处理切入的点

 

 

posted on   湖汉三  阅读(19)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示