Spring-单例模式和依赖注入

设计模式

参考:https://www.cnblogs.com/android-blogs/p/5530239.html

1. Spring管理的对象的作用域与生命周期(不常用)

由Spring管理的对象,默认都是单例的!并且,都是饿汉式的单例模式。

在配置<bean>节点时,可以添加scope属性其是否单例,当取值为singleton时表示单例,该值也是默认值,当取值为prototype时表示非单例:

<bean id="user" 
	class="cn.tedu.spring.User"
	scope="prototype"></bean>

在单例模式的基础之上,还可以通过lazy-init属性配置它是否为懒汉式的单例模式,默认值为false,即非懒汉式,也就是饿汉式的单例模式,当取值为true时,表示懒汉式的单例模式:

<bean id="user" 
	class="cn.tedu.spring.User"
	scope="singleton"
	lazy-init="true"></bean>

如果某个类被配置为单例模式,还可以配置它的生命周期方法:首先,在类中声明2个方法,这2个方法都应该是public方法,返回值都是void,方法名称可以自由定义,方法必须没有参数,例如:

public void init() {
	System.out.println("User.init()");
}

public void destroy() {
	System.out.println("User.destroy()");
}

然后,在Spring的配置文件中,在<bean>节点中配置init-methoddestroy-method属性,即可配置初始化方法和销毁方法,这2个属性的取值都是需要调用的方法的名称:

<bean id="user" 
	class="cn.tedu.sp
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值