生成spring容器并且生产bean的方式

在加载springbeanxml文件,生成spring容器。得到bean对象的几中用法。

srping中可以配置一个xml文件,但是为了解耦也可以配置多个xml文件。

通过spring容器直接生成bena对象。

1、  ApplicationConetx上下文对象来加载application.xml文件。

解析一个xml文件:

 比如说:

ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");

加载的是一个xml文件,通过它就可以获得bean对象了:

 ContainerBean bean=(ContainerBean)ctx.getBean("/cb");获得的是ContainerBean对象。

解析多个xml文件:

 比如说:ApplicationContext ctx=new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml","applicationContext2.Rel"});

 这里是建立了一个String数组

 

ClassPathXmlApplication对象指的是在该项目下的classes下去找xml的文件。生成对象。

2、  Resource加载application.xml文件,用beanFactory获得bean对象

 这个Resource文件只能加载一个xml文件。如果该xml文件还引用了其他的xml文件

        Resource resource=new ClassPathResource("applicationContext.xml");

         BeanFactory ctx=new XmlBeanFactory(resource);

      ContainerBean bean=(ContainerBean)ctx.getBean("/cb");

        bean工厂获得bean对象

  可以加载该xml文件的系统真实路径获得resource对象

   Resource resource=new FileSystemResource("E:/未来蓝图4_14连读班/Spring1.2FirstApp/classes/applicationContext.xml");

  BeanFactory ctx=new XmlBeanFactory(resource);        

  ContainerBean bean=(ContainerBean)ctx.getBean("/cb");

  也可以用BeanFactory的子类XmlFactory获得。用XmlFactory获得的好处是当你要执行类销毁方法的时候。可以执行ctx.destroySingletons(),但是前提是该类必须是单态的;

你可能感兴趣的:(spring,xml,bean)