Solon Aop 特色开发(1)注入或手动获取配置

常规操作,先启动 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 微型基础开发框架。支持REST API、MVC、Job、Remoting、MicoService等开发。

项目地址:

附:入门示例