IoC容器是Spring框架最最核心的组件,在Spring框架当中,主要通过依赖注入来实现IoC.
在 Spring 的世界中,所有的 Java 对象都会通过 IoC 容器转变为 Bean(Spring 对象的一种称呼,以后我们都用 Bean 来表示 Java 对象),构成应用程序主干和由 Spring IoC 容器管理的对象称为 beans,beans和它们之间的依赖关系反映在容器使用的配置元数据中。基本上所有的 Bean 都是由接口+实现类完成的,用户想要获取 Bean 的实例直接从 IoC 容器获取就可以了,不需要关心实现类
org.springframework.context.ApplicationContext 接口类定义容器的对外服务.通过这个接口我们可以轻松从IoC容器中得到Bean对象,在启动java程序时要先启动IoC容器
Annotation类型的Ioc容器对应的类org.springframework.context.annotation.AnnotationConfigApplicationContext 启动Ioc容器:
ApplicationContext context = new AnnotationConfigApplicationContext("fm.douban");
AnnotationConfigApplicationContext这个类的构造函数有两种:
- AnnotationConfigApplicationContext(String…basePackages)根据包名实例化
- AnnotationConfigApplicationContext(Class class)根据包名扫描行为实例化
声明Spring Bean的注解:
- org.springframework.stereotype.Service
- org.springframework.stereotype.Component
- org.springframework.stereotype.Controller
- org.springframework.stereotype.Repository
只要在类上引用这类注释,那么都可以被IoC容器加载:
- @Component注解是通用的Bean注解,其余注解都是扩展
- @Service 代表的是Service Bean
- @Controller作用于Web Bean
- @Repository作用于持久化相关Bean
|