如何将Bean配置到Spring的Bean容器中

 通过xml配置文件:

    Bean实现类来自第三方类库:如“DataSource”等

        需要命名空间配置如:context,aop,mvc等

    通过注解自动装配

        项目中自身开发的类,可直接方便的直接在代码中使用注解:@Serveice @Contorller等

    @Configuration实现在java类中配置            

        需要通过代码控制控制对象创建逻辑的场景:如自定义修改依赖类库

Bean的作用域

Bean的生命周期

   在Bean的生命周期中,Spring可以设置在Bean初始化之后以及在销毁之前要执行的方法。

 主要设置方式有以下几种:

  • 通过实现InitializingBean/DisposableBean 接口并重写afterPropertiesSet()/destroy()方法;
  • 通过<bean> 标签的 init-method/destroy-method属性指定;
  • 通过在指定方法上加@PostConstruct或@PreDestroy注解来指定;
  • 通过<beans>标签的 default-init-method和default-destroy-method属性指定;

 几种方法的优先级:

Constructor > @PostConstruct >InitializingBean > init-method

@PreDestroy > DisposableBean > destroy-method

  (ps: 1.如果用init-method/destroy-method指定方法,则该方法在类中必须存在,否则Bean会加载失败

        2.default-init-method和default-destroy-method属性指定的方法在类中可以不存在,同时当其他初始化或销毁方式生效的时候,盖默认设置不生效

      )

Resources&ResourceLoader

Spring中的IOC容器(学习笔记)的更多相关文章

  1. Spring的IOC容器学习笔记

    (一)Spring的IOC学习 在applicationContext.xml来配置bean,通过该接口,在主程序中,可以指定初始化的对象,不需要在进行赋值操作,直接在xml里配置好. 接下来分享的是 ...

  2. 浅谈Spring中的IOC容器

    一.IOC.DI基本概念 IoC(Inversion of Control)控制反转指的是把对象的创建,初始化,销毁等工作交给容器来做.由容器控制对象的生命周期(传统方式中是由我们程序员主动创建对象. ...

  3. Spring中AOP切面编程学习笔记

    注解方式实现aop我们主要分为如下几个步骤: 1.在切面类(为切点服务的类)前用@Aspect注释修饰,声明为一个切面类. 2.用@Pointcut注释声明一个切点,目的是为了告诉切面,谁是它的服务对 ...

  4. Spring中的AOP(学习笔记)

    是什么AOP及实现方式 AOP的基本概念 Schema-base AOP Spring AOP API AspectJ

  5. 理解Spring中的IoC和DI

    什么是IoC和DI IoC(Inversion of Control 控制反转):是一种面向对象编程中的一种设计原则,用来减低计算机代码之间的耦合度.其基本思想是:借助于"第三方" ...

  6. Spring学习(四)在Web项目中实例化IOC容器

    1.前言 前面我们讲到Spring在普通JAVA项目中的一些使用.本文将介绍在普通的Web项目中如何实例化Spring IOC容器.按照一般的思路.如果在Web中实例化Ioc容器.这不得获取Conte ...

  7. Spring——Web应用中的IoC容器创建(WebApplicationContext根应用上下文的创建过程)

    基于Spring-4.3.7.RELEASE Spring的配置不仅仅局限在XML文件,同样也可以使用Java代码来配置.在这里我使用XML配置文件的方式来粗略地讲讲WebApplicationCon ...

  8. Unity(IOC)学习笔记

    原文:Unity(IOC)学习笔记 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/m0_37591671/article/details/79432 ...

  9. Spring中的IOC

    在学习spring的时候,最常听到的词应该就是IOC和AOP了,以下,我从我的角度再次理解一下Spring里的IOC和AOP. IOC简单介绍 IoC(InversionofControl):IoC就 ...

随机推荐

  1. 关于ul中li不对齐的问题

    将li中加入 overflow:hidden;    即可. 同时overflow:auto  可以控制滚动条的出现.

  2. intellij idea 使用用到的问题

    1.github error setting certificate verify locations使用github时报错,解决方法: git config --system http.sslcai ...

  3. 怎么用SQL语句查数据库中某一列是否有重复项

    SELECT 某一列, COUNT( 某一列 ) FROM 表 GROUP BY 某一列 HAVING COUNT( 某一列 ) 〉1 这样查询出来的结果, 就是 有重复, 而且 重复的数量.

  4. 背单词(bzoj 4567)

    Description Lweb 面对如山的英语单词,陷入了深深的沉思,“我怎么样才能快点学完,然后去玩三国杀呢?”.这时候睿智 的凤老师从远处飘来,他送给了 Lweb 一本计划册和一大缸泡椒,他的计 ...

  5. ctrl+c,ctrl+d,ctrl+z在linux程序中意义和区别

    原文: http://blog.csdn.net/sxhlovehmm/article/details/41318111 [侵删] ctrl+c和ctrl+z都是中断命令,但是他们的作用却不一样.   ...

  6. iOS推送的开启与关闭

    开启: 
[[UIApplication sharedApplication] registerForRemoteNotificationTypes: UIRemoteNotificationType ...

  7. ubuntu下用webbench做网站压力测试

    安装依赖 exuberant-ctags sudo apt-get install exuberant-ctags 下载源码并安装 wget http://blog.s135.com/soft/lin ...

  8. UICollectionView 使用 介绍

    1.1. Collection View 全家福: UICollectionView, UITableView, NSCollectionView n   不直接等效于NSCollectionView ...

  9. python 工具 FFT变换

    import numpy as npimport pylabwave_data =np.fromfile("C:\\Users\\Administrator\\Desktop\\bins\\ ...

  10. Error: cannot call methods on draggable prior to initialization; attempted to call

    cannot call methods on draggable prior to initialization; attempted to call  报这个问题的根本原因是由于你的引用文件有问题 ...