一、Spring读取配置文件的实现方式

Spring框架可以通过多种方式读取配置文件,具体实现方式有:

1、使用ClassPathXmlApplicationContext读取XML文件;
2、使用PropertyPlaceholderConfigurer读取properties文件;
3、使用XmlBeanFactory读取XML文件;
4、使用Resource读取文件;
5、使用Spring的@Value注解读取配置文件;
6、使用Spring的Environment读取配置文件。

二、ClassPathXmlApplicationContext读取XML文件

ClassPathXmlApplicationContext是Spring框架中提供的用于读取XML文件的类,可以用来读取配置文件,它的使用方法如下:

ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
BeanFactory beanFactory = (BeanFactory) context;
DataSource dataSource = (DataSource) beanFactory.getBean("dataSource");
String driverClassName = dataSource.getDriverClassName();
String url = dataSource.getUrl();
String userName = dataSource.getUsername();
String password = dataSource.getPassword();
context.close();

上述代码中,第一行创建ClassPathXmlApplicationContext实例,第二行使用该实例获取BeanFactory实例,第三行使用BeanFactory实例获取DataSource实例,第四行获取数据库连接驱动类名,第五行获取数据库连接URL,第六行获取数据库用户名,第七行获取数据库密码,第八行关闭ClassPathXmlApplicationContext实例。

三、PropertyPlaceholderConfigurer读取properties文件

PropertyPlaceholderConfigurer是Spring框架提供的用于读取properties文件的类,可以用来读取配置文件,它的使用方法如下:

PropertyPlaceholderConfigurer configurer = new PropertyPlaceholderConfigurer();
configurer.setLocation(new ClassPathResource("jdbc.properties"));
configurer.setIgnoreUnresolvablePlaceholders(true);
configurer.setOrder(1);
configurer.postProcessBeanFactory(beanFactory);
String driverClassName = beanFactory.getBean("driverClassName", String.class);
String url = beanFactory.getBean("url", String.class);
String userName = beanFactory.getBean("userName", String.class);
String password = beanFactory.getBean("password", String.class);

上述代码中,第一行创建PropertyPlaceholderConfigurer实例,第二行设置要读取的properties文件,第三行设置是否忽略未解析的占位符,第四行设置PropertyPlaceholderConfigurer的处理顺序,第五行调用postProcessBeanFactory方法,第六行获取数据库连接驱动类名,第七行获取数据库连接URL,第八行获取数据库用户名,第九行获取数据库密码。