Spring自动创建属性文件

时间:2017-10-12 12:06:55

标签: java spring-boot properties-file

我有一个简单的类来表示使用@Component @PropertySource(value = "file:${user.home}/.cooperp/app-conf.properties") public class ApplicationProperties { @Value("${mysql-location}") private String mysqlLocation; public String getMysqlLocation() { return mysqlLocation; } public void setMysqlLocation(String mysqlLocation) { this.mysqlLocation = mysqlLocation; } } 的属性文件,如此

ignoreResourceNotFound = true

我知道如果找不到文件,可以添加{{1}},这会使spring忽略它的缺席并启动应用程序。

我想弹簧创建文件它找不到,不要忽略或抛出异常。

1 个答案:

答案 0 :(得分:1)

通常我们将属性文件保存在项目目录中。但是,如果您的项目需要外部属性,那么您可以检查SpringBootApplication类中是否存在该文件。如果它没有,那么你可以在那里创建属性文件。代码示例:

@SpringBootApplication
public class SpringDocBotApplication {

    public static void main(String[] args) {
        File file = new File("EXPECTED PATH"); 

        try{
            if(!file.exists()){
                // create propeties file add properties
            }
        } catch (IOException e) {
         //HANDLE EXCEPTION
        }
        SpringApplication.run(SpringDocBotApplication.class, args);
    }
}