社区
Java EE
帖子详情
spring 启动时已经把bean实例化好了吗?
henliqi
2011-01-14 11:17:52
spring时在启动时就把bean实例化好了吗?如果是这样,我在每个类构造方法里写上System.out.println("hello world!");在spring启动时为什么不输出呢?而getbean的时候却输出了?
...全文
509
14
打赏
收藏
spring 启动时已经把bean实例化好了吗?
spring时在启动时就把bean实例化好了吗?如果是这样,我在每个类构造方法里写上System.out.println("hello world!");在spring启动时为什么不输出呢?而getbean的时候却输出了?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tubage408
2011-01-14
打赏
举报
回复
BeanFactory factory = null;
//factory = new XmlBeanFactory(new ClassPathResource("com/spring/exercise/applicationContext.xml"));
//factory.getBean("testBean");
factory = new ClassPathXmlApplicationContext("com/spring/exercise/applicationContext.xml");
tubage408
2011-01-14
打赏
举报
回复
BeanFactory和ApplicationContext是不同的,按照lz说的是不是使用的BeanFactory呀??
henliqi
2011-01-14
打赏
举报
回复
看来只有读源码才行了。我看了一下,但是看不懂。有谁看得懂的吗?
0蛋总0
2011-01-14
打赏
举报
回复
调用BEAN的时候才会实例化
henliqi
2011-01-14
打赏
举报
回复
default-lazy-init="true" 和lazy-init="true"都没加,是不是默认的?我要default-lazy-init="flase" 和lazy-init="flase" 才行?
「已注销」
2011-01-14
打赏
举报
回复
spring时在启动时就把bean实例化好了吗?
Spring并不是在启动时实例化bean的,
而是第一次调用时,实例化Bean。
采用单例模式。
kai27ks
2011-01-14
打赏
举报
回复
我觉得不是。是导入了指针。否则的话启动得多慢。。
howsun_zh
2011-01-14
打赏
举报
回复
默认是容器启动就实例化。
楼主是不是在<beans> 标签中增加了default-lazy-init="true" 或者<bean>标签中增加了lazy-init="true"?
howardhewang
2011-01-14
打赏
举报
回复
第一个问题的答案我也不知道,和你一样,不确定。
但是你自己试出来了啊
答案就是:需要时才创建。
跟懒加载机制差不多
henliqi
2011-01-14
打赏
举报
回复
终于试出来了。
zhangjihao正解。
xiahancslg
2011-01-14
打赏
举报
回复
楼上基本都是正解,spring采用的也是懒加载的机制!单实例模式!
dinghao
2011-01-14
打赏
举报
回复
spring 懒加载机制,使用的是代理对象!
等到用到的时候才会去调用这个对象,你可以DEBUG的时候看这个对象的id
henliqi
2011-01-14
打赏
举报
回复
对的,我是这样写的。
BeanFactory factory = null;
factory = new XmlBeanFactory(new ClassPathResource("com/spring/exercise/applicationContext.xml"));
factory.getBean("testBean");
这样的是启动后才实例化吗?
还有这样
factory = new ClassPathXmlApplicationContext("com/spring/exercise/applicationContext.xml");
factory.getBean("testBean");
是启动时实例化吗?
Spring
启动及
Bea
n
实例化
过程来看经典扩展接口
从
Spring
启动及
Bea
n
实例化
过程来看经典扩展接口如下,并给出我们可能的应用分析:
Bea
nPostProcessor+
Bea
nFactoryPostProcessor+ApplicationContextAware++Initializing
Bea
n和Disposable
Bea
n+...
Spring
什么时候
实例化
Bea
n的?
2、还是第一次用到
bea
n的时候
实例化
? 于是决定看一下源码 N年以前,
spring
还没有现在这么强大的时候,我们是如何使用
spring
的呢?使用XML文件配置,如下: public class SchoolServiceImpl { public String ...
Spring
中四种
实例化
bea
n的方式
目录第一种:使用构造器
实例化
Bea
n第二种:使用静态工厂方式
实例化
Bea
n第三种:使用实例工厂方法
实例化
Bea
n第四种:用 setter 方式
Spring
IoC容器如何
实例化
Bea
n呢?传统应用程序可以通过new和反射方式进行
实例化
...
Spring
中如何获取到一个
Bea
n实例(二)?
除了在项目启动过程中,refresh方法过程中
spring
会自动
实例化
单例
bea
n并解析
bea
n依赖之外,我们通常可能使用如下两种方式主动获取
bea
n,触发
bea
n
实例化
过程。 如下所示,分别是根据
bea
n class type以及
bea
nName来...
spring
到底什么时候进行
bea
n
实例化
2、后来又有人告诉我说,
spring
是在容器启动的时候就将
bea
n都给你
实例化
好了。 那么究竟哪个正确呢?其实这么回答都不正确,
spring
对
bea
n的初始化其实是有条件的。 首先判断是单例还是多例,如果是多例的情况下,...
Java EE
67,512
社区成员
225,880
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章