Solon

solon.config.yaml

v2.7.3 native </> markdown

此插件,由社区成员(rabbit)贡献

<dependency>
    <groupId>org.noear</groupId>
    <artifactId>solon.config.yaml</artifactId>
</dependency>

1、描述

基础扩展插件,为 solon 增加 yaml 的配置支持。

2、配置参考

  • app.yml(会默认加载)
server.port: 8080

solon.app:
  group: "demo"
  name: "demoapp"
  • demo.yml(需手动加载)
user.name: "noear"
user.level: 0

3、配置增强

  • #添加外部扩展配置(用于指定外部配置。策略:先加载内部的,再加载外部的盖上去)
solon.config.add: "./app.yml" #把文件放外面(多个用","隔开) //替代已弃用的 solon.config
  • 添加多个内部配置(在 app.yml 之外,添加配置加载)//v2.2.7 后支持
solon.config.load:
  - "app-ds-${solon.env}.yml"     #可以是环境相关的
  - "app-auth_${solon.env}.yml"
  - "config/common.yml"           #也可以环境无关的或者带目录的

4、多片段加载(v2.5.5 后支持)

例:app.yml

solon.env: pro

---
solon.env.on: pro
demo.auth:
  user: root
  password: Ssn1LeyxpQpglre0
---
solon.env.on: dev | test
demo.auth:
  user: demo
  password: 1234

5、代码应用

public class DemoApp{
    public static void main(String[] args){
        Solon.start(DemoApp.class, args, app -> {
            //手动加载配置文件
            app.cfg().loadAdd("demo.yml");
        });
    }
    
    @Inject("${demo.name}")
    public String demoName;
}