快捷搜索: 王者荣耀 脱发

Spring Bean的配置和使用

Bean

IOC容器负责对象的创建、初始化等一系列工作,被创建或被管理的对象在IoC容器中统称为Bean



bean配置

名称:bean 类型:标签 所属:beans标签 功能:定义Spring核心容器管理的对象 格式: 属性列表: id:bean的id,使用容器可以通过id值获取对应的bean,在一个容器中id是唯一的 class:bean的类型,及配置的bean的全路径类名

配置别名

名称:name 类型:属性 所属:bean标签 功能:定义bean的别名,可定义多个,使用逗号(,)分号(;)空格( )进行分隔 注意事项:获取bean无论是通过id还是name获取,如果无法获取到,将抛出异常NoSuchBeanDefinitionExption异常

Bean作用范围配置

名称:scope 类型:属性 所属:bean标签 功能:定义bean的作用范围: singleton:单例(默认的) prototype:非单例 scope的取值不仅仅只有singleton和prototype,还有request、session、application、 websocket ,表示创建出的对象放置在web容器(tomcat)对应的位置。比如:request表示保存到request域中。 一般单例可以满足日常开发

bean的实例化

bean本质上就是对象,创建bean使用构造方法完成 1.构造方法方式 BookDaoImpl实现类 applicationContext.xml配置 测试类 注意:无参构造方法如果不存在,将抛出异常 2.静态工厂方式 EatDaoImpl实现类 工厂类 applicationContext.xml配置 测试类

3.实例工厂方式,变种为实现FactoryBean接口 UserDao实现类 工厂类: applicationContext.xml配置 测试类 UserFactoryBean类 applicationContext.xml配置

Bean的生命周期

生命周期:从创建到消亡的完整过程 bean生命周期:bean从创建到销毁的整体过程 bean生命周期控制:在bean创建后到销毁前做一些事情 Bean销毁时机: 容器关闭前触发bean的销毁 关闭容器方式: 手动关闭容器:ConfigurableApplicationContext接口close()操作 注册关闭钩子,在虚拟机退出前先关闭容器再退出虚拟机:ConfigurableApplicationContext接口registerShutdownHook()操作

经验分享 程序员 微信小程序 职场和发展