`

sping之bean对象生成两种方式

阅读更多
bean的生成方式有两种

1  通过应用程序上下文

加载配置文件,根据配置bean创建bean对象,默认生成方式为singleton,调用配置文件,即会立即生成对象

优点:一次生成所有管理的对象,在实际使用的时候,不用再去创建对象,效率快,

缺点:就算只用到了一个对象,也会把所有对象都生成,占内存,但现在硬件便宜,内存很大,所以不算太大问题。

其他配置方式:
prototype,不会立即生成对象,在真正使用的时候生成
request,针对web程序,每个request请求生成一个对象
session 一个会话期间
global session 类似应用容器整个生命周期

2  通过bean工厂,生成bean对象

生成bean工厂,不会立即生成工厂里的bean对象,而是类似懒加载机制,真正使用对象的时候,才生成

优点:实时创建对象,节约内存

缺点:因为实时创建对象,效率相对慢

1
1
分享到:
评论

相关推荐

    Spring AOP源码分析.mmap

    有关于Spring,我们最常用的两个功能就是IOC和AOP,前几篇文章从源码级别介绍了Spring容器如何为我们生成bean及bean之间的依赖关系... 确实,Spring也就是通过这两种方式来实现AOP相关功能,下面就通过源码来简单求证下

    spring3.0jar包

    ◆容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一...

    Spring 中文API&开发文档.rar

    ◆容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一...

    spring-framework-3.1.0.RELEASE.zip

    容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个...

    Spring攻略(第二版 中文高清版).part1

    3.12 将Spring Bean注入领域对象 147 3.12.1 问题 147 3.12.2 解决方案 147 3.12.3 工作原理 148 3.13 小结 151 第4章 Spring中的脚本 152 4.1 用脚本语言实现Bean 152 4.1.1 问题 152 4.1.2 解决...

    Spring面试题

    spring以动态灵活的方式来管理对象 , 注入的两种方式,设置注入和构造注入。 设置注入的优点:直观,自然 构造注入的优点:可以在构造器中决定依赖关系的顺序。 什么是AOP? 面向切面编程(AOP)完善spring的...

    Spring MVC 入门实例

    11 <bean id="simpleUrlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> 12 13 14 <prop key="/hello.do">helloController 15 16 17 </bean> 18 19 <bean id=...

    Spring_Framework_ API_5.0.5 (CHM格式)

    响应式编程是 SpringFramework5.0 最重要的特性之一。响应式编程提供了另一种编程风格,专注于构建对事件做出响应的应用程序。 SpringFramework5 包含响应流(定义响应性API的语言中立尝试)和 Reactor(由Spring ...

    Springboot入门——初学者对Spring Ioc技术的理解与运用,包含Bean生命周期

    Ioc是一种通过描述来生成或获取对象的技术,这里的对象当然是指java对象。 在Java中我们更多的是通过new关键字来创建对象,在Spring中,则是通过描述来创建对象。 所以我们知道了,Ioc就是用来获取java对象的东西,...

    Spring攻略(第二版 中文高清版).part2

    3.12 将Spring Bean注入领域对象 147 3.12.1 问题 147 3.12.2 解决方案 147 3.12.3 工作原理 148 3.13 小结 151 第4章 Spring中的脚本 152 4.1 用脚本语言实现Bean 152 4.1.1 问题 152 4.1.2 解决...

    精通Spring整合MyBatis:架构师的实践指南

    Spring和MyBatis的整合是Java开发中常见的架构模式,它提供了一种高效、灵活的方式来管理数据库操作和业务逻辑层。本文深入探讨了Spring和MyBatis整合的关键原理和实践要点,帮助架构师和开发者有效地利用这两个强大...

    spring:Spring框架

    Spring 4.x Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,提供了一个简易的开发式,这种开发方式,将避免那些可能致使底层...动态代理两种方式 JDK代理:要求目标对象必须有接口

    springmybatis

    mybatis实战教程mybatis in action之九mybatis 代码生成工具的使用 mybatis SqlSessionDaoSupport的使用附代码下载 转自:http://www.yihaomen.com/article/java/302.htm (读者注:其实这个应该叫做很基础的入门...

    ssh(structs,spring,hibernate)框架中的上传下载

     需要指定的是Spring 1.2.5提供了两套Hibernate的支持包,其中Hibernate 2相关的封装类位于org.springframework.orm.hibernate2.*包中,而Hibernate 3.0的封装类位于org.springframework.orm.hibernate3.*包中,...

    Myeclipse开发struts+hibernate+spring新手入门--环境配置---项目开发示例

    安装Myeclipse,分为手工安装和自动安装两种安装方法。 具体安装方法如下: 手工安装: 自动安装: 5、安装完成后。启动Myeclipse。 准备开发工作: 步骤: 1、新建项目: New>projects后进入下图 本文主要介绍...

    基于maven项目的SSM框架与layu前端框架的代码

    利用了工厂模式将对象交给容器管理,你只需要在spring配置文件总配置相应的bean,以及设置相关的属性,让spring容器来生成类的实例对象以及管理对象。在spring容器启动的时候,spring会把你在配置文件中配置的bean都...

    商店:spring cloud最佳实践项目实例,使用了spring cloud全家桶,TCC事务管理,EDA事务最终一致性等技术的下单示例

    事务处理使用两种:强一致性(TCC),最终一致性(EDA) 使用技术 java 8:使用lambda表达式,简化写法 lombok:简化的java bean的写法 docker-maven-plugin:直接生成Dockerfile(本地需更换成阿里云层叠,速度和...

    DWR.xml配置文件说明书(含源码)

    Creator可以配置类的成员函数的访问权限.creator有授权访问(指明可以被访问的方法)和拒绝访问(指明不允许访问的方法)两种配置方式. 如果要设置除了setWibble方法之外的所有方法都不可访问可以采用下面的设置. ...

    spring学习笔记

    Bean:....................................................................................................................................12 1.4.1Spring 框架Bean 实例化的方式:.............................

Global site tag (gtag.js) - Google Analytics