Spring哪里用到原型模式,举个简单的例子
时间: 2024-11-12 09:38:06 浏览: 5
第四章:Spring AOP API 设计模式1
Spring框架广泛应用了原型模式,尤其是在依赖注入(DI)部分。原型模式的核心思想是创建一个可以快速复制的对象,而无需每次实例化都花费大量时间构建复杂对象。在Spring中,`Prototype scope`就是基于这种模式的一个典型应用。
例如,当你需要创建大量相似的对象,但每个对象又有一些特定配置(如数据库连接、缓存配置等),你可以定义一个单例的工厂Bean,它实现了`org.springframework.beans.factory.config.ConfigurableListableBeanFactory`的`createPrototypeInstance()`方法。然后在配置文件中声明这个bean为prototype类型:
```xml
<bean id="configurableObject" class="com.example.ConfigurableObject" scope="prototype">
<property name="config1" value="value1"/>
<property name="config2" value="value2"/>
</bean>
```
这样,每当从容器中请求一个新的`ConfigurableObject`实例时,都会返回一个全新的对象,但是共享相同的配置属性,这极大地提高了效率并保持了代码的简洁。
阅读全文