Spring注解驱动开发 简练笔记

Spring的底层:容器注入组件,会自动装配其依赖的关系。(即,Ioc控制反转、DI依赖注入)

@Configuration
说明是一个配置类。位置在配置类名之上。

@Bean
在配置类中,注入person。id默认是方法名。

@Bean
public Person person(){
	return new Person("lisi", 20);
}

测试类中

ApplicationContext applicationContext=new AnnotationConfigApplicationContext(配置类.class);
Person bean=applicationContext.getBean(Person.class);

ApplicationContext,就是容器。然后从容器中获取bean

@ComponentScan
包扫描。位置在配置类名之上(也见过在启动类之上)。
在指定的包下,凡是标注了@Controller、@Service、@Repository、@Component的组件,都会扫描进入容器中。
()内的意义:首先指明包的位置,然后指明这个包下的哪些组件不扫描,或者只扫描这个包下的某些组件。

@Scope
组件会被创建多少个?
单实例、多实例
位置,bean标签上下

@Lazy
仅仅针对单实例,因为默认情况下,容器创建时就装入了单实例。

@Conditional
满足指定的条件,才将组件注入容器。

@Import
给容器中注入组件的三种方式:
1.包扫描+@Contrller等4个注解,自定义类,在类上标注,然后包扫描
2.@Bean,导入第三方的类,类上没注解,在config类中注入bean
3.@import,快速注入
4.使用spring提供的FactoryBean(工厂bean)

config类的作用,就是之前的bean.xml,就是用来给容器中注入组件的。

bean的生命周期,省略。

@Value
给bean的属性赋值
1.基本数值
2.SpEL:#{},比如#{20-3},即17
3.取出配置文件中的值:${},指定配置文件的位置@PropertySource(…)

@Autowired
自动装配,spring定义的注解
即,依赖注入DI,注入各个组件的依赖关系。比如,controller组件中注入service组件。
除此之外,还支持@Resource和@Inject,这俩是java定义的DI注解

自定义组件想要使用Spring容器底层的组件,比如ApplicationContext、BeanFactory,需要自定义组件实现xxxAware接口。

@Profile
根据当前环境,动态地切换组件。比如,开发、测试、生产环境切换不同的环境配置组件。

首先要将组件注入容器中,后续才能使用Spring提供的强大功能,比如AOP、声明式事务、springmvc

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值