spring之未加后置处理器的bean的生命周期
时间:2022-07-23
本文章向大家介绍spring之未加后置处理器的bean的生命周期,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
(1)springIOC容器可以管理bean的生命周期。spring允许在bean生命周期的特定点执行定制的任务。
(2)spring的IOC容器对bean的生命周期进行管理的过程:
- 通过构造器或工厂方法创建bean的实例;
- 为bean的属性设置值并对其他bean的引用;
- 调用Bean的初始化方法;
- bean可以被使用了;
- 当容器关闭时,调用bean的销毁方法;
(3)当bean设置声明了init-method和destroy-method属性,为bean指定初始化和销毁方法。
Car.java
package com.gong.spring.beans.cycle;
public class Car {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Car() {
System.out.println( "car的构造器");
}
public void init() {
System.out.println("init...");
}
public void destroy() {
System.out.println("destroy...");
}
@Override
public String toString() {
return "Car [name=" + name + "]";
}
}
beans-cycle.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="car" class="com.gong.spring.beans.cycle.Car" init-method="init"
destroy-method="destroy">
<property name="name" value="baoma"></property>
</bean>
</beans>
Main.java
package com.gong.spring.beans.cycle;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Main {
public static void main(String[] args) {
//1.创建spring的IOC容器对象
ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("beans-cycle.xml");
//2.从容器中获取Bean实例
Car car = (Car) ctx.getBean("car");
System.out.println(car.toString());
ctx.close();
}
}
输出:
- 添加php的memcached扩展模块
- Android TextView中显示图片
- Nginx配置中的log_format用法梳理(设置详细的日志格式)
- 分享一个刷网页PV的python小脚本
- mysql完整备份时过滤掉某些库
- Jquery 结合Json控制Select下拉框
- ExtJs学习笔记(23)-ScriptTagProxy+XTemplate+WCF跨域取数据
- Centos7.2下Jumpserver V4.0环境安装部署记录
- 利用JQuery实现更简单的Ajax跨域请求
- 运维工作中sed常规操作命令梳理
- linux下安装php的imagick扩展模块(附php升级脚本)
- 用JS + WCF打造轻量级WebPart
- Android之assets资源
- ExtJs学习笔记(24)-Drag/Drop拖动功能
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- pt-osc改表过程中的中文乱码问题
- Hive Query生命周期 —— 钩子(Hook)函数篇
- python快速排序
- 扩展 Microsoft.Owin.Security
- Angular 2 版本的 ng-bootstrap 初体验
- 揭开MySQL“锁”的神秘面纱
- 从0到1开发测试平台(九)后端对接口response的封装
- 在 Mac OS X 上安装和配置 Wine
- 性能测试之nginx访问日志分析
- Pytest之断言
- R语言单因素方差分析简单小例子
- 回炉重造:计算图
- CenterNet的骨干网络之DLASeg
- 一份朴实无华的移动端盒子滤波算法优化笔记
- [译]基于以太坊和USDC搭建去中心化金融系统