Bean 生命周期&&模块化配置

(一)审生命周期

1,配置一个方法作为生命初始化方法Spring会在对象创建后调用(init-method)

2,配置一个方法生命周期的销毁方法,spring容器在关闭并销毁所有容器中的对象之前调用。(destory-method)

S1:

package com.songyan.demo1;

import com.sun.org.apache.xml.internal.security.Init;

/**
 * 要创建的对象类
 * @author sy
 *
 */
public class User {
private String name;
private int age ;
/**
 * 声明销毁方法
 */

public void destory() {

System.out.println("destory~~~~");
}
/**
 * 声明初始化方法
 */
public void init()
{
    System.out.println("init~~~~~~~~~");
}
public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}
public int getAge() {
    return age;
}
public void setAge(int age) {
    this.age = age;
}

}

S2:

<!--通过构造函数创建对象  -->
<!--声明初始化方法&&销毁方法  -->
<bean id="userid" class="com.songyan.demo1.User" init-method="init" destroy-method="destory"></bean>
    

S3:

    ClassPathXmlApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
    User user=(User)applicationContext.getBean("userid");
    System.out.println(user);
    //通过关闭容器触发destory方法
    applicationContext.close();

结果

(二)模块化配置

在开发过程中,用到的对象越来越多,导致配置文件越来越复杂。因此可以将对象的配置放在其他的xml文件中,在导入进来

比如将图中的beans.xml引入到applicationContext中

<import resource="com/songyan/Test/beans.xml"/>

原文地址:https://www.cnblogs.com/excellencesy/p/9129238.html

时间: 2024-10-07 06:57:59

Bean 生命周期&&模块化配置的相关文章

bean生命周期

那在spring中bean的生命周期究竟是怎样的呢 1. 容器寻找Bean的定义信息并将其实例化 2. 使用依赖注入,spring按照Bean定义信息配置Bean的所有属性 3. 如果Bean实现了BeanNameAware接口,工厂调用Bean的SetBeanName()方法传递Bean的ID 4. 如果Bean实现了BeanFactoryAware接口,工厂调用setBeanFactory()方法传入工厂自身 5. 如果BeanPostProcessor和Bean关联,那么其postProc

【Spring学习】Bean生命周期

我理解的Bean生命周期包括两个方面: Bean何时创建,何时销毁 Bean从创建到销毁的执行流程 一.Bean创建与销毁 Bean的创建时机主要由几个配置项共同来决定,包括: scope属性,决定是Bean是单例模式(singleton)还是多例模式(prototype),默认为单例singleton: lazy-init属性,只对单例模式有效,决定是否延时加载,默认为false,表示在容器初始化时,就会生成单例: RequestMapping属性,这个注解MVC中才有,当有该属性时,lazy

Bean 生命周期

对于普通的Java对象,当new的时候创建对象,当它没有任何引用的时候被垃圾回收机制回收.而由Spring IoC容器托管的对象,它们的生命周期完全由容器控制. Bean生命周期流程 1.实例化Bean 实例化Bean对于BeanFactory容器,当客户向容器请求一个尚未初始化的bean时,或初始化bean的时候需要注入另一个尚未初始化的依赖时,容器就会调用createBean进行实例化. 对于ApplicationContext容器,当容器启动结束后,便实例化所有的bean. 容器通过获取B

Spring点滴四:Spring Bean生命周期

Spring Bean 生命周期示意图: 了解Spring的生命周期非常重要,我们可以利用Spring机制来定制Bean的实例化过程. --------------------------------------------------------------------------------------------------------------------------------------------------- spring-service.xml: <?xml version=

Spring事务,Bean生命周期

一.事务相关: 1.Spring事务基于Spring AOP切面编程: 2.AOP基于代理模式,得到需要开启事务的代码的代理对象: 3.而没有开启事务的Service方法里调用了开启事务 @Transactional 的方法时,整个代码是不会开启事务的,原理还是代理模式插入事务的依据是最外层的注解: 4.对于上面3,反之,则可以,这是事务的传播机制. 二.Bean生命周期: 2.1生命周期图: 出自:<精通Spring 4.x> 2.2不同级别的接口分类: 1.Bean本身的方法:Bean的构

一步步剖析spring bean生命周期

关于spring bean的生命周期,是深入学习spring的基础,也是难点,本篇文章将采用代码+图文结论的方式来阐述spring bean的生命周期, 本篇文章将阐述清楚下图. 一  项目结构及源码 1.程序目录结构 2.applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/sc

Spring Bean生命周期

1.Bean的建立:BeanFactory容器寻找Bean的定义信息,读取Bean定义文件,并将其实例化,生成各个Bean实例.2.属性注入:使用依赖注入,Spring按照Bean定义信息配置Bean所有属性.3.BeanNameAware的setBeanName():传递Bean的ID.4.BeanFactoryAware的setBeanFactory():工厂调用setBeanFactory()方法传入工厂自身.如果是使用ApplicationContext来生成并管理Bean的话则稍有不同

spring容器对bean生命周期的管理三中方式

spring容器对bean的生命周期管理主要在两个时间点:bean的初始化完成(包括属性值被完全注入),bean的销毁(程序结束,或者引用结束)方式一:使用springXML配置中的init-method="init" destroy-method="destory" 这个两个配置,可以实现两个时间点插入定制的操作.方式二: 使用spring提供的2个接口:InitializingBean,DisposableBean方式三:使用java注解:@PostConstr

从启动日志看Spring IOC的初始化和Bean生命周期

一.Tomcat中启动IoC容器的日志 启动Tomcat等容器时,控制台每次都打印出一些日志. 最近刚好在研究Spring源码,所以换个角度,从启动日志来简单的看看Spring的初始化过程! 以下是Tomcat启动时日志,截取Spring部分. //------------------------------------- //从这里开始Spring的初始化 十一月 10, 2015 8:52:03 上午 org.apache.catalina.core.ApplicationContext l