Spring加载Bean定义文件笔记

加载XML定义文件方式四种:

BeanFactory bf=new XmlBeanFactory(new ClassPathResource("spring.xml"));

意思是BeanFactory从XML读取Bean定义的信息,现在Bean工厂还没有实例化Bean,Bean是延迟加载到Bean工厂中,也就是说Bean工厂会立即把Bean定义的信息载入进来,但是Bean只是在被需要的时候才被实例化。

ApplicationContext是采用的预先实例化,这样可以及早的发现错误。

比如在配置文件中出现错误,会立即给于提示。

ApplicationContext ac=new FileSystemXmlApplicationContext("src/spring.xml");
   

从文件系统中的XML文件载入上下文定义信息,只能在指定的路径中寻找spring.xml文件

ApplicationContext ac=new ClassPathXmlApplicationContext("spring.xml");
 

从类路径中XML文件载入上下文信息把上下文定义的文件当成类路径资源,可以在整个类路径中寻找

ApplicationContext ac=new XmlWebApplicationContext("WebRoot/spring.xml"));
   

从web系统中的XML文件载入上下文信息

加载.properties定义文件方式

BeanDefinitionRegistry reg=new DefaultListableBeanFactory();
PropertiesBeanDefinitionReader reader=new PropertiesBeanDefinitionReader(reg);
reader.loadBeanDefinitions(new ClassPathResource("hellobean.properties"));
BeanFactory bf=(BeanFactory) reg;
 

相关推荐