Spring注解

Spring注解:
Spring的一个核心功能是IOC,就是将Bean初始化加载到容器中,而加载bean到容器中可以使用注解方式或xml配置方式;
使用注解方式,不但减少了配置文件内容,更加便于管理,并且可以大大的提高开发效率;
其实注解本身是没有功能的,和xml一样,它们两者都是一种元数据,元数据即解释数据的数据,也就是所谓的配置;
注解与xml的作用:
Xml是用于管理bean的;
注解只负责完成属性的注入;
但在使用注解之前,需要注意,必须先开启注解的支持;
如下: 在这里插入图片描述

Spring的常用注解:

  1. 给容器注入组件;
    ·包扫描+组件标注注解;
    ·@Component;泛指各种组件;
    ·@Controller;@Service;@Repository都可以称为@Component;
    ·@Controller;控制层;
    ·@Service;业务层;
    ·@Repository;数据访问层
    2.@Bean
    导入第三方包里面的注解;
    3.@Import
    要导入到容器中的注解
    注入bean的注解:
    @Autowired:由bean提供
    @Autowired可以作用在变量、setter方法、构造函数上;
    有一个属性为required,可以配置为false;
    @Inject:由JSR-330提供

@Inject用法和@Autowired一样。
@Resource:由JSR-250提供
@Autowired、@Inject是默认按照类型匹配的,@Resource是按照名称匹配的,@Autowired如果需要按照名称匹配需要和@Qualifier一起使用,@Inject和@Name一起使用。
@Primary
可以让spring进行自动装配的时候,默认使用首选的bean,和@Qualifier一个效果。
@JsonIgnore的作用与使用:
·作用
在json序列化时将java bean中的一些属性忽略掉,序列化和反序列化都受影响。
·使用方法
一般标记在属性或者方法上,返回的json数据即不包含该属性。
·注解失效
如果注解失效,可能是因为你使用的是fastJson,尝试使用对应的注解来忽略字段,注解为:@JSONField(serialize = false),使用方法一样。
初始化和销毁方法
·通过@Bean(initMethod=“init”,destoryMethod=“destory”)方法
·通过bean实现InitializingBean来定义初始化逻辑,DisposableBean定义销毁逻辑
·可以使用JSR250:@PostConstruct:初始化方法;@PreDestory:销毁方法。
·BeanPostProcessor:bean的后置处理器,在bean初始化前后进行一些处理工作
postProcessBeforeInitialization:在初始化之前工作;
postProcessAfterInitialization:在初始化工作之后工作;
切面(AOP)的相关注解
·Spring支持AspectJ的注解式切面编程。
·@Aspect 声明一个切面
·@After 在方法执行之后执行(方法上)
·@Before 在方法执行之前执行(方法上)
·@Around 在方法执行之前与之后执行(方法上)
·@PointCut 声明切点
在java配置类中使用@EnableAspectJAutoProxy注解开启Spring对AspectJ代理的支持

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值