答:BeanFactory接口擅长于处理bean的初始化和配置,提供了配制框架及基本功能;ApplicationContext 是BeanFactory的扩展,功能得到了进一步增强,比如更易 与Spring  AOP集成、资源处理(国际化处理)、事件传递及各种不同应用层的context实现 (如针对web应用的WebApplicationContext)。简而言之,一般把ApplicationContext接 口作为首选。2.为什么使用bean?
答:使用'bean'这个名字而不是'组件'(component) 或'对象'(object)的动机  源于Spring框架本身(它产生的部分原因就是对Enterprise Java Beans复杂性的一次解构)。
3.多种资源加载配置元数据?
答:Spring IoC容器可以通过多种途径来加载配置元数据,比如本地文件系统、Java CLASSPATH等。Resource抽象机制。
4.怎么实例化容器?
答:ApplicationContext context = new ClassPathXmlApplicationContext(
new String[] {"services.xml", "daos.xml"});
// anApplicationContextis also aBeanFactory(via inheritance)
BeanFactory factory = context;
XML配置元数据的结构:相对路径
5.bean的在Spring IOC 容器中怎么定义的?
答:bean定义由BeanDefinition对象来表示。包括全限定类名、bean行为的定义、对其他bean的引用、
创建bean实例时的其他配置设置。他们被映射为中的properties: 
class-类名,name-名字,scope-作用域,constructor arguments - 构造器参数,properties - 属性,autowiring mode
自动装配,dependency checking mode - 依赖检查,lazy-initialization mode - 初始化延迟,
initialization method - 初始化方法, destruction method - 析构方法。
6.bean的命名、 bean的别名?
答:bean的命名采用标准的Java命名约定,即小写字母开头,首字母大写间隔 的命名方式。如accountManager、accountService、userDao及loginController,等等。
xml配置别名:
7.实例化bean的方式?
答:
1)用构造器来实例化。
IoC容器不仅限于管理JavaBean,它可以管理任意 的类。
2)使用静态工厂方法实例化。createInstance()必须是一个static方法。
3)使用实例工厂方法实例化。
8.使用容器
从本质上讲,BeanFactory仅仅只是一个  维护bean定义以及相互依赖关系的高级工厂接口。通过BeanFactory  我们可以访问bean定义。下面的例子创建了一个bean工厂,此工厂 将从xml文件中读取bean定义:
基本上就这些了,接着使用getBean(String)  方法就可以取得bean的实例;BeanFactory 提供的方法极其简单。 BeanFactory接口提供 了非常多的方法,但是对于我们的应用来说,最好永远不要调用它们,当然也包括  使用getBean(String)方法,这样可以避免我们对 Spring API的依赖。
没有评论:
发表评论