Springboot获取yml/properties文件中的值并在工具类和普通类中使用简单示例

嗯我遇到的暂时就这么多情况,自定义properties文件名,静态工具类中使用,和自定义properties文件位置

1. self-config.propreties

这里是配置文件

config.taskUrl=http://localhost:1314/task/
config.filePath=C:/dev/terminal/files/

2. SelfConfig.propreties

接收配置文件,另外网传的获取配置文件工具类一般不建议使用,如果在配置文件中修改属性名很难在使用的地方进行同步修改

package com.self.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;

/**
 * @author Xiaoyan
 * @date 2019/10/10 17:14
 */
@Component
@ConfigurationProperties(prefix = "config")
// 自定义位置&文件名
@PropertySource("classpath:/self-config.properties")
@Data
public class SelfConfig {

    private String taskUrl;

    private String filePath;
}

3. 正常使用:

不用详细介绍了吧

@Autowired
private SelfConfig config;

4. 工具类中使用:

package com.self.util;

import com.self.config.SelfFileConfig;
import com.self.config.SelfSimpleFieldConfig;
import com.self.entity.SelfEquipment;
import com.self.entity.SelfFile;
import com.system.util.ToolUtil;
import lombok.val;
import org.apache.commons.io.FileUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;

import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @author Xiaoyan
 * @date 2019/9/23 18:47
 */
@Component
public class FileUtil {
    private static SelfSimpleFieldConfig config;

    @Autowired
    public void setConfig(SelfSimpleFieldConfig config) {
        FileUtil.config = config;
    }
    
    public static void printConfig() {
        System.out.println("config.toString() = " + config.toString());
    }
}

猜你喜欢

转载自www.cnblogs.com/liangyun/p/11652749.html