Solon Aop 特色開發(1)注入或手動獲取配置

劉之西東發表於2021-05-23

Solon,更小、更快、更自由!本系列專門介紹Solon Aop方面的特色:

常規操作,先啟動 Solon

public class App{
    public void main(String[] args){
        Solon.start(App.class, args);
    }
}

一、如何通過注入獲得配置?

  • 注入到欄位
@Service
public class DemoService{
    //注入值
    @Inject("${track.url}")
    String trackUrl;
    
    //注入配置集合
    @Inject("${track.db1}")
    Properties trackDbCfg;
    
    //注入Bean(根據對應的配置集合生成並注入)
    @Inject("${track.db1}")
    HikariDataSource trackDs;
}
  • 注入到配置器的構建引數(與注入欄位的方式差不多)
@Configuration
public class DemoConfig{
    @Bean
    public DataSource db1(@Inject("${track.db1}") HikariDataSource ds) {
        return ds;
    }
}

二、如何手動獲得配置?

  • 給欄位賦值
public class DemoService{
    //獲取值
    String trackUrl = Solon.cfg().get("track.url");
    //獲取配置集合
    Properties trackDbCfg = Solon.cfg().getProp("track.db1");
    //獲取bean(根據配置集合自動生成)
    HikariDataSource trackDs = Solon.cfg().getBean("track.db1", HikariDataSource.class);
}
  • 構建Bean給配置器用
@Configuration
public class DemoConfig{
    @Bean
    public DataSource db1() {
        return Solon.cfg().getBean("track.db1", HikariDataSource.class);
    }
}

附:Solon 是什麼?

一個外掛式的 Java 微型基礎開發框架。支援Web、Job、Remoting、MicoService等開發。

專案地址:

附:入門示例

相關文章