Spring的常用配置

Bean的初始化和销毁

1:java配置方式,使用@Bean中的initMethod(在构造方法之后)和destroyMethod(Bean销毁之前)(相当于xml中配置的init-method和destroy-method)

2:注解方式@PostContruct(在构造函数之后执行)和@PreDestroy(在Bean销毁之前执行

事件ApplicationEvent

1:自定义监听器,继承ApplicationEvent

2:自定义事件监听器,实现ApplicationListener,指定监听的事件类,使用onApplicationEvent方法对消息进行接受处理

3:使用容器发布事件

Spring Aware

目的是为了让Bean获得Spring容器的服务

BeanNameAware获得到容器中Bean的名称
BeanFactoryAware获得当前bean factory,这样可以调用容器的服务
ApplicationContextAware*获得当前application context,这样可以调用容器的服务
MessageSourceAware获得message source,这样可以获得文本信息
ApplicationEventPublisherAware应用事件发布器,可以发布事件
ResourceLoaderAware获得资源加载器,可以获得外部资源文件

多线程(基于TaskExecutor)

1:利用@EnableAsync注解开启一步任务支持

2:配置类,实现AsyncConfigurer接口,重新getAsyncExecutor方法,并返回一个ThreadPoolTaskExecutor,这样就可以获得一个基于线程池的TaskExecutor

3:通过@Async注解表明该方法是个异步的方法;注解在类级别上,表明该类的方法的所有的方法都是异步方法,这里的方法被自动注入使用TaskPoolTaskExecutor作为TaskExecutor

计划任务

1:@EnableScheduling 注解开启对计划任务的支持

2:@Scheuled声明该方法是计划任务,使用fixedRate属性每隔固定时间执行,cron属性可按照指定时间执行

条件注解@Conditional

@Conditional根据某一特定的条件创建某一个特定的Bean

组合注解和元注解

四大元注解:

1:@Target,表示注解的使用范围

2:@Retention,表示注解的使用时间

3:Documented,描述在使用 javadoc 工具为类生成帮助文档时是否要保留其注解信息。

4:@Inherited,使被它修饰的注解具有继承性(如果某个类使用了被@Inherited修饰的注解,则其子类将自动具有该注解)。

@Enable*注解的工作原理:开启一项功能的支持

@EnableAspectJAutoProxy 开启对AspectJ自动代理的支持

@EnableAsync 开启对异步方法的支持

@EnableScheduling 开启对计划任务的支持

@EnableWebMvc  开启对Web MVC的支持

在@Enable*注解源码中,都有一个@Import注解,@Import注解是为了导入配置类的。

导入配置的三种方式:

1:直接加载配置类

2:根据条件选择配置类

3:动态注册Bean

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值