Spring之配置文件bean作用域的详细介绍

Spring的配置文件applicationContext.xml中bean作用域的详细介绍:

1:对象的创建:单例和多例
        scope="singleton",默认值,单例 适合于【service,dao,工具类】
        scope="prototype",多例适合于【Action对象】
2:什么时候创建对象?
      scope="singleton" 在启动的时候就已经创建了bean,且整个应用只有一个,在容器初始化之前
      scope="prototype" 在用到对象的时候才创建对象
3:是否延迟创建?(只对单例singleton有效,对多例无效):
       lazy-init="default" 默认是false,不延迟创建,即在启动的时候就创建对象
       lazy-init="true" 延迟初始化,在用到对象的时候才创建
4:初始化和销毁的方法:

  init-method="初始化方法名" 【对应对象的初始化方法,在对象创建之后执行】
      destroy-method="销毁的方法名" 【在调用容器对象的销毁方法的时候执行,容器必须使用实现类                                             ClassPathXmlApplicationContext,不能使用application接口】

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4     xmlns:p="http://www.springframework.org/schema/p"
 5     xmlns:context="http://www.springframework.org/schema/context"
 6     xsi:schemaLocation="
 7         http://www.springframework.org/schema/beans
 8         http://www.springframework.org/schema/beans/spring-beans.xsd
 9         http://www.springframework.org/schema/context
10         http://www.springframework.org/schema/context/spring-context.xsd">
11
12
13      <!-- IoC容器的配置,要创建的所有的对象都配置在这里 -->
14      <!-- <bean id="user" class="com.bie.po.User" scope="singleton"></bean> -->
15      <bean id="user" class="com.bie.po.User"></bean>
16      <!-- <bean id="user" class="com.bie.po.User" scope="prototype"></bean> -->
17      <bean id="user" class="com.bie.po.User" init-method=""></bean>
18      <bean id="user" class="com.bie.po.User" destroy-method=""></bean>
19      <bean id="user" class="com.bie.po.User" lazy-init="default"></bean>
20
21 </beans>     

对于难啃的骨头,我想说只能一点点啃了~.-.~

时间: 2024-08-03 11:10:23

Spring之配置文件bean作用域的详细介绍的相关文章

【spring boot】11.spring-data-jpa的详细介绍和复杂使用

这篇专门用来对spring-data-jpa的详细介绍和复杂使用做一个阐述. 参考文档:https://docs.spring.io/spring-data/jpa/docs/current/reference/html/  

Spring Bean的生命周期详细介绍_java

Spring作为当前Java最流行.最强大的轻量级框架,受到了程序员的热烈欢迎.准确的了解Spring Bean的生命周期是非常必要的.我们通常使用ApplicationContext作为Spring容器.这里,我们讲的也是 ApplicationContext中Bean的生命周期.而实际上BeanFactory也是差不多的,只不过处理器需要手动注册. 一.生命周期流程图: Spring Bean的完整生命周期从创建Spring容器开始,直到最终Spring容器销毁Bean,这其中包含了一系列关

Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍_MongoDB

Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍 一.基本环境: mongdb3.0.5数据库 spring-data-MongoDB-1.7.2.jar mongo-Java-driver-3.0.2.jar Linux-redhat6.3 tomcat7 二.搭建mongodb副本集: 1.  分别在三台linux系统机上安装mongodb,(为避免和机器上原有的mongodb端口冲突,这里设为57017): 192.168.0.160 192.168.0.

Spring容器中Bean的作用域

    当通过Spring容器创建一个Bean实例时,不仅可以完成Bean实例的实例化,还可以为Bean指定特定的作用域.Spring支持如下5种作用域: singleton:单例模式,在整个Spring IoC容器中,使用singleton定义的Bean将只有一个实例 prototype:原型模式,每次通过容器的getBean方法获取prototype定义的Bean时,都将产生一个新的Bean实例 request:对于每次HTTP请求,使用request定义的Bean都将产生一个新实例,即每次

JavaScript中变量作用域详细介绍

  以下变量具有全局作用域:     1.所有定义在最外层的变量(非函数体内部)具有全局作用域.     2.未定义直接赋值的变量,系统会把它声明为全局作用域.     3.所有window对象的属性具有全局作用域. 以下变量具有函数作用域   1. 在函数体内部用var定义的变量,这里要注意一点,只要是在函数里定义的变量,就算是在最       后一句定义,该变量也拥有整个函数的作用域.但是它的赋值是等到运行到那一句代码以         后才赋值的!!!   特别应该说明的一点是,作用域是层

微信小程序 配置文件详细介绍_JavaScript

下面以开发者工具自动生成的程序框架为例,对小程序的框架进行介绍. 选择一个空的项目目录创建一个小程序项目,如下图: 创建完成后我们看到如下目录结构: 目录结构 小程序包含一个描述整体程序的 app 和多个描述各自页面的 page. 一个小程序主体部分由三个文件组成,必须放在项目的根目录,如下: 文件 必须 作用 app.js 是 小程序逻辑 app.json 是 小程序公共设置 app.wxss 否 小程序公共样式表 pages目录下为小程序页面,每个页面须建立独立的文件夹,例如上面生成的小程序

想讨论一下.struts+spring+hibernate的bean的作用域问题,也就是&amp;amp;lt;bean

问题描述 想讨论一下.struts+spring+hibernate的bean的作用域问题,也就是<bean scope="">的设置从表示层开始:1.Struts Action对应的bean作用域2.业务层的Service类的bean作用域3.数据存储层的DAO类的bean作用域4.实体层的Bean的作用域. 解决方案 1.Struts Action对应的bean作用域 scope=prototype2.业务层的Service类的bean作用域 scope=prototy

Spring中管理Bean依赖注入之后和Bean销毁之前的行为

    对于Singleton作用域的Bean,Spring容器将会跟踪它们的生命周期,容器知道何时实例化结束.何时销毁.Spring可以管理Bean在实例化结束之后和Bean销毁之前的行为. Bean依赖关系注入之后的行为:     Spring提供了两种方式在Bean全部属性设置成功后执行特定的行为: 在Spring配置文件中使用init-method属性:这个属性指定某个方法在Bean全部依赖关系设置结束后自动执行.这个方法写在Bean里面.使用这种方法不需要将代码与Spring耦合在一起

Java Annotation认知(包括框架图、详细介绍、示例说明)

摘要 Java Annotation是JDK5.0引入的一种注释机制. 网上很多关于Java Annotation的文章,看得人眼花缭乱.Java Annotation本来很简单的,结果说的人没说清楚:弄的看的人更加迷糊. 我按照自己的思路,对Annotation进行了整理.理解 Annotation 的关键,是理解Annotation的语法和用法,对这些内容,我都进行了详细说明:理解Annotation的语法和用法之后,再看Annotation的框架图,可能有更深刻体会.废话就说这么多,下面开