怎么实现用户第一次启动时在前端配置数据源

初始时不在application.yaml配置关于数据源的内容,启动后用户在前端将数据源信息发送到某api,后端在此api中进行修改application.yaml、加载数据源的操作,且以后重新启动后端都会自动加载数据源

1 个赞

首先你的后端需要支持多数据源,使用h2等作为“安装时”的数据源
然后前端在“安装时”阶段配置的信息发送到后端后后端通过resource中的默认配置文件与前端传来的数据merge后生成一份文件到本地的~/.<app-name>/下或者其他指定可读取的路径即可

1 个赞

感谢回复

附指定location读取方式

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        // Customize the spring config location
        System.setProperty("spring.config.additional-location",
            "optional:file:${user.home}/.youAppName/");

        // Run application
        SpringApplication.run(Application.class, args);
    }

}

参考地址

@naughtz 请参考](SpringBoot动态更新数据库url)