Spring读取配置文件的几种方式

  1 import java.io.FileInputStream;
  2 import java.io.FileNotFoundException;
  3 import java.io.FileReader;
  4 import java.io.IOException;
  5 import java.io.Reader;
  6 import java.util.Properties;
  7 
  8 import org.junit.Test;
  9 import org.springframework.core.io.ClassPathResource;
 10 import org.springframework.core.io.FileSystemResource;
 11 import org.springframework.core.io.Resource;
 12 
 13 /**
 14  * BeanFactory只有依赖注入功能没有AOP功能, ApplicationContext继承自BeanFactory有AOP功能
 15  */
 16 public class GetBeanFactory {
 17     /**
 18      * 加载项目内的配置文件,读取classPath之下的文件
 19      */
 20     public void test01() {
 21         Resource resource = new ClassPathResource("applicationContext.xml");
 22         BeanFactory bf = new XmlBeanFactory(resource);
 23         StudentAction studentService = (StudentAction) bf
 24                 .getBean("StudentAction");
 25         System.out.println(studentService);
 26     }
 27 
 28     /**
 29      * 加载项目外的配置文件,File读取C盘下的文件
 30      */
 31     public void test02() {
 32         Resource resource = new FileSystemResource("C:/applicationContext.xml");
 33         BeanFactory beanFactory = new XmlBeanFactory(resource);
 34         StudentAction studentAction = (StudentAction) beanFactory
 35                 .getBean("studentAction");
 36         System.out.println(studentAction);
 37     }
 38 
 39     /**
 40      * 读取Tomcat中的application配置文件, 必须导入Spring3-Web.jar包
 41      */
 42     public void test03() {
 43         /*
 44          * 将下面的代码必须放到jsp页面里面执行 <% org.springframework.core.io.Resource
 45          * resource=null; org.springframework.beans.factory.BeanFactory
 46          * beanFactory=null; resource=new
 47          * org.springframework.web.context.support
 48          * .ServletContextResource(application
 49          * ,"/WEB-INF/classes/applicationContext.xml"); beanFactory=new
 50          * org.springframework.beans.factory.xml.XmlBeanFactory(resource);
 51          * System.out.println(beanFactory); %>
 52          */
 53     }
 54 
 55     /**
 56      * ApplicationContext继承自BeanFactory有AOP功能
 57      */
 58     public void test04() {
 59         ApplicationContext context = new ClassPathXmlApplicationContext(
 60                 "applicationContext.xml");
 61         StudentService studentService = (StudentService) context
 62                 .getBean("studentService");
 63         studentService.save(new Student("test", 22));
 64     }
 65 
 66     /**
 67      * ApplicationContext继承自BeanFactory有AOP功能
 68      */
 69     public void test05() {
 70         ApplicationContext context = new FileSystemXmlApplicationContext(
 71                 "C:/applicationContext.xml");
 72         System.out.println(context.getBeanDefinitionCount());// 定义bean的总数
 73     }
 74     /**
 75      * ApplicationContext继承自BeanFactory有AOP功能
 76      */
 77     public void test06() {
 78         String[] filepath = { "applicationContext.xml" };
 79         ApplicationContext factory = new ClassPathXmlApplicationContext(
 80                 filepath);
 81         StudentService studentService = (StudentService) factory
 82                 .getBean("studentService");
 83     }
 84     /**
 85      * 用Spring读取properties文件
 86      */
 87     @Test
 88     public void test07() throws Exception, Exception {
 89         Resource r = new ClassPathResource("ssh.properties");
 90         Properties p=new Properties();
 91         p.load(new FileInputStream(r.getFile()));
 92         System.out.println(p.get("studentDao"));
 93     }
 94     
 95     @Test
 96     public void test08() throws Exception, Exception {
 97         Resource r = new ClassPathResource("a.txt");
 98     }
 99 
100 }
原文地址:https://www.cnblogs.com/tfgzs/p/3932827.html