定义两个具有组合关系的Bean组件类,在applicationContext.xml中添加定义。 2、掌握如何获取Spring容器及获取对象。 3、单例模式与多例模式的创建及使用。 4、使用注解,给容器中注入组件。
时间: 2024-02-20 08:59:06 浏览: 63
spring中通过ApplicationContext getBean获取注入对象的方法实例
4星 · 用户满意度95%
1. 定义两个具有组合关系的Bean组件类,在applicationContext.xml中添加定义。
```xml
<!-- 定义组件A -->
<bean id="componentA" class="com.example.ComponentA">
<property name="componentB" ref="componentB" />
</bean>
<!-- 定义组件B -->
<bean id="componentB" class="com.example.ComponentB" />
```
2. 获取Spring容器及获取对象
可以通过ClassPathXmlApplicationContext类或FileSystemXmlApplicationContext类来获取Spring容器,然后使用getBean方法从容器中获取对象。
```java
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
ComponentA componentA = (ComponentA) context.getBean("componentA");
```
3. 单例模式与多例模式的创建及使用
在Spring中,Bean默认是单例模式的,也就是说在整个容器中只有一个实例。如果需要创建多个实例,可以使用@Scope注解指定作用域为prototype。
```java
// 单例模式Bean
@Component
public class SingletonComponent {}
// 多例模式Bean
@Component
@Scope("prototype")
public class PrototypeComponent {}
```
4. 使用注解,给容器中注入组件
使用@Component或@Service注解标注需要注入到容器中的组件类,使用@Autowired注解实现依赖注入。例如:
```java
@Component
public class ComponentA {
@Autowired
private ComponentB componentB;
}
@Component
public class ComponentB {}
```
阅读全文