一文详解Spring加载properties文件的方式

spring第三方资源配置管理

  • DruidDataSource
  • ComboPooledDataSource

一、druid的资源配置管理

导入druid的坐标:

        
            com.alibaba
            druid
            1.1.16
        

App运行输出druid:

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
 
import javax.sql.DataSource;
 
public class App {
    public static void main(String[] args) {
        ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
        DataSource dataSource = (DataSource) ctx.getBean("dataSource");
        System.out.println(dataSource);
 
    }
}

applicationContext.xml配置:

配置数据源对象作为spring管理的bean


   
           
           
           
           
   

执行结果:

一文详解Spring加载properties文件的方式_第1张图片

二、c3p0资源配置管理

maven远程仓库中找:

导入c3p0的坐标:

        
            c3p0
            c3p0
            0.9.1.2
        

c3p0还需要mysql的驱动,导入mysql的坐标:

        
            mysql
            mysql-connector-java
            5.1.47
        

App运行输出与上面的一样。

applicationContext.xml配置:

  
       
           
           
           
           
           
       

也可以配置最大连接对象和其他需要配置数据。

执行结果:

一文详解Spring加载properties文件的方式_第2张图片

三、加载properties文件

1、开启context命名空间,总共5处标红的地方需要修改为context。



2、使用context命名空间,加载指定properties文件


properties配置文件,配置时要加jdbc,不然会和系统环境变量冲突,系统优先级高:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/spring_db
jdbc.username=root
jdbc.password=root

3、使用${ }读取加载的properties文件中的属性值

说明:idea自动识别${ }加载的属性值,需要手工点击才可以查阅原始书写格式





不加载系统属性

可通过此种方法不加载系统属性,就不会和系统属性冲突:

system-properties-mode属性:是否加载系统属性


加载多个properties文件

用逗号分隔可加载多个properties文件:


加载所有properties文件


加载properties文件标准格式

classpath:*.properties:设置加载当前工程类路径中的所有properties文件


从类路径或jar包中搜索并加载properties文件

classpath*:*.properties:设置加载当前工程类路径和当前工程所依赖的所有jar包中的所有properties文件


以上就是一文详解Spring加载properties文件的方式的详细内容,更多关于Spring加载properties文件的资料请关注脚本之家其它相关文章!

你可能感兴趣的:(一文详解Spring加载properties文件的方式)