首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

beanFactory跟applicationContext创建javaBean的区别

2012-09-01 
beanFactory和applicationContext创建javaBean的区别BeanFactory提供管理和创建javaBean的基本功能,applic

beanFactory和applicationContext创建javaBean的区别
    BeanFactory提供管理和创建javaBean的基本功能,applicationContext是BeanFactory下的一个子接口,用于加强BeanFactory的及其实现提供的功能。我们不需要显示的用代码创建applicationContext实例,只需要在web容器中设置一个监听器:

     <listener><listener class>   org.springframework.web.context.ContextLoaderListener</listener-class>  </listener>

    或者用个servlet,当然手工创建也是可以的。
    这样的话,当web应用启动的时候自动实例化applicationContext,并且所有的javaBean都会被创建,除非我们显示的设置了延迟加载机制。当然我们也要注意,如果javaBean非常多的时候,由于解析以及创建会花费很多时间,服务器启动将会变得缓慢,若设为延迟加载,则又会带来的问题是客户端需要某个javaBean的时候又得等待其被初始化和创建,不能立即注入使用。
     如果用BeanFactory创建Bean的话,默认的是延迟装载,只有当调用getBean()方法的时候,Bean实例才会被创建。 1 楼 肉嘎嘎 2011-04-03   基本就是这样吧,不过applicationcontext还是可以显示创建的 2 楼 Technoboy 2011-04-03   当web应用启动的时候自动实例化applicationContext的真正原因是因为ContextLoaderListener实现了ServletContextListener。
并且applicationContext还可以手动创建,只是应用在想servlet,ejb容器中的时候,配置一个监听就可以了!

热点排行