小编dia*_*mah的帖子

将一些JSON文件加载到Spring Boot应用程序的最佳方法

我即将创建一个Rest webservice应用程序,我需要在应用程序启动时加载存在于作为参数传递的文件夹中的所有JSON文件(在application.yml中先验),以便稍后在webservices的方法中使用它们bean列表(每个JSON文件对应一个bean).

一个样本,以进一步解释我的要求:

application.yml:

json.config.folder: /opt/my_application/json_configs
Run Code Online (Sandbox Code Playgroud)

MyApplication.java:

package com.company;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class MyApplication {
    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class, args);
    }
}
Run Code Online (Sandbox Code Playgroud)

具有以下结构的JSON文件:

    {  
   "key":"YYYYY",
   "operator_list":[  
        {  
           "name":"operator1",
           "configs":{  
               "id":"XXXXX1",
               "path":"xxxx2"
           }
        },
        {  
            "name":"operator2",
            "configs":{  
                "id":"XXXXX1",
                "passphrase":"xxxx2",
                "user_id":"XXXX3",
                "password":"XXXXX"
            }
        },
        {  
            "name":"operator3",
            "configs":{  
                "user_id":"XXXXX1"
            }
        }
    ]
    }
Run Code Online (Sandbox Code Playgroud)

RestAPI.java

@RestController
@RequestMapping("/my_app_url")
@PropertySource(value={"classpath:application.yml"})
public class RestAPI {
    //Some fields
    ....

    //Some methods
    ....

    //Method that return operator list of a given …
Run Code Online (Sandbox Code Playgroud)

java json spring-boot

19
推荐指数
1
解决办法
4万
查看次数

标签 统计

java ×1

json ×1

spring-boot ×1