Spring Bean的作用域和XML配置
来源:互联网 发布:软件项目管理论文 编辑:程序博客网 时间:2024/06/14 23:11
所有的Spring Bean默认都是单例的。当容器分配一个bean时(不论是通过装配,还是调用容器的getBean() 方法),它总是返回一个同一个bean对象。当需要多个实例时(比如票对象,电影票每个人都是不一样的),需要额外的配置
<bean id="ticket" class="com.ticket" scope="prototype"></bean>
可以对scope进行参数配置满足开发需要,有一下几种情况:
bean配置
package bean;public interface Performer { void perform();}
package bean;/** * 杂技师 * * @author SJ-PC * */public class Juggler implements Performer { private int beanBags = 3; public Juggler() { } public Juggler(int beanBags){ this.beanBags=beanBags; } @Override public void perform() { System.out.println("表演杂技"+" "+beanBags); }}
package bean;public interface Poem { void recite();}
package bean;public class Sonnet29 implements Poem { @Override public void recite() { System.out.println("Sonnet29 recite"); }}
package bean;public class PoeticJuggler extends Juggler { Poem poem; public PoeticJuggler(Poem poem) { this.poem = poem; } public PoeticJuggler(Poem poem, int beanbags) { super(beanbags); this.poem = poem; } @Override public void perform() { super.perform(); System.out.println("while reciting"); poem.recite(); }}
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:p="http://www.springframework.org/schema/p" xmlns:util="http://www.springframework.org/schema/util" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:cache="http://www.springframework.org/schema/cache" xsi:schemaLocation=" http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.1.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd"> <bean id="duke" class="bean.Juggler"> <constructor-arg value="15" /> </bean> <bean id="sonnet29" class="bean.Sonnet29"> </bean> <bean id="poeticjuggler" class="bean.PoeticJuggler"> <constructor-arg value="15"/> <constructor-arg ref="sonnet29" /> </bean></beans>
import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import bean.Performer;public class Main { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("spring-idol.xml"); Performer performer = (Performer)context.getBean("poeticjuggler"); performer.perform(); }}
阅读全文
0 0
- Spring Bean的作用域和XML配置
- Spring配置bean的作用域
- spring 6 bean配置--bean的作用域
- Spring Bean--Bean的配置项、作用域、生命周期
- spring配置bean作用域
- spring bean的作用域和生命周期
- Spring Bean的生命周期和作用域
- Spring bean.xml的配置
- Spring Bean的XML配置
- spring学习笔记(1) 配置spring bean的作用域 创建方法和销毁方法
- Spring取出bean的方法和xml里的配置
- spring中配置Bean的xml方式和注解方式
- 配置Spring管理的bean的作用域
- 配置Spring管理的bean的作用域
- 配置Spring管理的bean的作用域
- spring bean的作用域
- spring bean的作用域
- Spring---->Bean的作用域
- webstorm安装
- SSL2811 2017年10月30日提高组T2 摘Galo(树形dp)
- 对java super 学习理解
- html5 新增的语义化标签
- Z03 C++中const的通常用法
- Spring Bean的作用域和XML配置
- C#学习笔记---委托(1)
- 微信公众号开发---踩坑日记
- 一百年沧桑巨变,数学大树依然长青
- Writeup of NJUPT CTF platform's some easy Reverse
- unity中实现键盘打字的效果
- 32位win7改装64位win10遇到的问题及解决方法
- leetcode: 7.Reverse Integer
- Ubuntu16.04使用FLANN出现的错误记录