spring IOC 使用注解方式配置
spring·基于注解的方式IOC操作bean管理
1 配置maven依赖
org.springframework
spring-webmvc
5.2.9.RELEASE
junit
junit
4.13
test
org.projectlombok
lombok
1.18.20
2 xml文件配置
-
约束文件
-
开启组件扫描
<?xml version="1.0" encoding="UTF-8"?>
3 在要创建类的上面添加注解@component
- @Component, @Service, @Controller, @Repository作用是一样的
-
注解里面的value属性值可以省略不写
-
默认值是类名称,首字母小写
如:UserService -- userService
-
在xml配置文件上配置bean文件
4 组件扫描的细节
-
在xml文件配置
-
use-default-filter="false",表示不使用默认的filter,自己设置扫描内容
意思是:在com.atguigu这个包中,默认不扫描,扫描类型是注解,注解是@Controller下的类
-
exclude-filter:设置那些内容不进行扫描
5 基于注解方式实现属性注入
- @Autowired
- @Qualifier
- @Resource
- Value
-
@Autowired:根据属性类型进行自动装配
操作步骤:1 用注解的方式创建对象
2 在要实现属性注入的对象上面添加@Autowire注解
-
@Qualifier:根据名称进行注入
@Qualifier(value = "属性名称")
-
@Resource:可以根据类型注入,可以根据名称注入
6 完全注解开发
1 创建一个配置类
2 在类上面写注解
@Configuration //作为配置类,替代 xml 配置文件
@ComponentScan(basePackages = {"com.atguigu"})
public class SpringConfig {
}
3 创建测试类
将ClassPathXMLConfigApplication改写程AnnotationConfigApplication
@Test
public void testService2() {
//加载配置类
ApplicationContext context
= new AnnotationConfigApplicationContext(SpringConfig.class);
}