2、Spring针对bean管理提供的注解org.springframework spring-aop 5.2.12.RELEASE
存在4个创建Bean实例,功能一致,只是对应不同的层
- @Component
- @Controller
- @Service
- @Repository
-
引入依赖spring-aop
-
在配置文件中开启组件扫描
-
创建类,在类上面添加创建对象注解(@Component、@Controller、@Service、@Respository)
@Component("user") //等价于//仅使用 @Compinent bean的id为类名的首字母小写 public class User { }
-
关于
-
关于
-
@Autowired : 根据属性类型进行自动装配
//不需要添加setter方法了,底层已经完成了 @Autowired private UserDao userDao; -
@Qualifier : 根据属性名称进行注入,要和@Autowired一起使用
@Autowired @Qualifier(value = "userDaoImpl") private UserDao userDao; -
@Resource : 根据类型注入,也可以根据名称注入@Resource(name="")不是spring中的注解
@Resource//或者@Resource(name = "userDaoImpl") private UserDao userDao; -
@Value : 注入普通类型属性
@Value("张三") private String name;
-
配置类
@Configuration //表示这个一个配置类,用来代替xml文件 @ComponentScan(basePackages = {"day01.annotation"})//表示包扫描 public class SpringConfig { } -
测试类
@Test public void test2(){ ApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class); UserService service = context.getBean("userServiceImpl", UserService.class); service.service(); }



