Spirng bean

spring bean
作用域(scope)

作用域描述
singleton单例模式,每一个spring context中只有一个实例
prototype每次调用一个getBen方法都会产生一个新的对象
request每个request请求产生一个实例
session每个htttp session中产生一个实例
application(global session)每个servelet context 产生一个实例,这个bean是以一个属性存在于servelet context中。与singleton不同在于,一个web应用中可能存在多个spring context实例
WebSocketWebSocket作用域与WebSocket会话的生命周期相关联,适用于WebSocket应用程序上的STOMP

创建bean方式:

  1. 使用Spring XML方式配置,该方式用于在纯Spring 应用中,适用于简单的小应用,当应用变得复杂,将会导致XMl配置文件膨胀 ,不利于对象管理。
<bean id="xxxx"  class="xxxx.xxxx"/>
  1. 通过标注注解定义bean,然后同过ComponentScan扫描加载bean
@Component
@Service
@Controller
@Repository
@RestController
public class TestBean {
}
注解名称描述
@Component创建bean最基本方式,标注bean
@Controller, @RestController派生自@Component注解,此注解标注bean为spring mvc的controller层的bean, Spring MVC将使用这些bean接收处理客户request
@Service派生自@Component注解,此注解标注bean为spring mvc的service层的bean, 用于处理业务逻辑
@Repository派生自@Component注解,此注解标注bean为spring mvc的repository层的bean, 此bean一般用于处理数据层的业务
  1. 通过bean factory 来创建bean, @Configuration,@Bean配合使用
    @Configuration, 标注工厂类为配置类
    @Bean, 标注工厂类里边的方法生成bean,我们还可以为bean定义多个别名
@Configuration
public class TestBeanFactory {

    @Bean({"bean1","bean2"})
    public Object getBean(){
        return null;
    }
}

Bean生命周期
转载 http://www.cnblogs.com/zrtqsk/p/3735273.html
在这里插入图片描述在这里插入图片描述Bean的完整生命周期经历了各种方法调用,这些方法可以划分为以下几类:

1、Bean自身的方法  :  这个包括了Bean本身调用的方法和通过配置文件中的init-method和destroy-method指定的方法

2、Bean级生命周期接口方法  :  这个包括了BeanNameAware、BeanFactoryAware、InitializingBean和DiposableBean这些接口的方法

3、容器级生命周期接口方法  :  这个包括了InstantiationAwareBeanPostProcessor 和 BeanPostProcessor 这两个接口实现,一般称它们的实现类为“后处理器”。

4、工厂后处理器接口方法  :  这个包括了AspectJWeavingEnabler, ConfigurationClassPostProcessor, CustomAutowireConfigurer等等非常有用的工厂后处理器  接口的方法。工厂后处理器也是容器级的。在应用上下文装配配置文件之后立即调用。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值