spring-ioc 注解
2018-11-03 本文已影响6人
lixinxin
spring-ioc 注解使用
- 配置扫描路径
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/beans/spring-context.xsd">
<!-- Spring的IOC 注解 - 配置扫描路径 -->
<context:component-scan base-package="com.lixinxinlove" />
</beans>
- 添加注解
@Component("user")
- 使用
ApplicationContext applicationContext = new
ClassPathXmlApplicationContext("applicationContext.xml");
User user = (User) applicationContext.getBean("user");
System.out.println(user.toString());
Spring 的 Bean 管理的中常用的注解:
- @Component:组件.(作用在类上)
- Spring 中提供@Component 的三衍生注解:(功能目前来讲是一致的)
- 1 @Controller :WEB 层
- 2 @Service :业务层
- 3 @Repository :持久层
这三个注解是为了让标注类本身的用途清晰, Spring 在后续版本会对其增强
属性注入的注解:(使用注解注入的方式,可以不用提供 set 方法.)
- @Value :用于注入普通类型.
- @Autowired :自动装配:
- 默认按类型进行装配.
- 按名称注入:
- @Qualifier:强制使用名称注入.
@Resource 相当于: - @Autowired 和@Qualifier 一起使用.
1.2.2.3 Bean 的作用范围的注解:
@Scope: - singleton:单例
- prototype:多例
- Bean 的生命周期的配置:
- @PostConstruct :相当于 init-method
- @PreDestroy :相当于 destroy-method