Solon Aop 特色开发注入或手动获取Bean

Posted 刘西东

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Solon Aop 特色开发注入或手动获取Bean相关的知识,希望对你有一定的参考价值。

Solon,更小、更快、更自由!本系列专门介绍Solon Aop方面的特色:

常规操作,先启动 Solon

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

一、如何注入Bean?

先了解一下Bean生命周期的简化版:构建函数 - > 尝试注入(异步的)-> @Init 函数->...->释放。了解这个过程后,可以知道注入的内容,在构建函数里不一定可用:

@Service
public class DemoService{
    
    //这个注入是异步的,不能在构造函数里使用
    @Inject
    private TrackService trackService;
    
    public DemoService(){
        //此时,trackService 还没有注入;不能用 
    }
    
    @Init
    public void init(){
        //(如果想用)此时,trackService 已完成注入
    }
}

二、如何手动获取Bean?

@Service
public class DemoService{
    
    private TrackService trackService;
    
    public DemoService(){
        //通过异步回调模式获取
        Aop.getAsyn(DemoService.class, bw-> {
            trackService = bw.get();
            
            //bean 获取后,可以做些后续处理。。。
        });
    }
}

附:Solon 是什么?

一个插件式的 Java 微型基础开发框架。支持Web、Job、Remoting、MicoService等开发。

项目地址:

附:入门示例

以上是关于Solon Aop 特色开发注入或手动获取Bean的主要内容,如果未能解决你的问题,请参考以下文章

十年Java编程开发生涯,java获取数组最大值的函数

spring工具类中注入使用bean

Spring(DI,AOP) 理解

Spring中AOP主要用来做什么。Spring注入bean的方式。什么是IOC,什么是依赖注入

spring使用aop时需要设置proxy-target-class="true" 否则无法依赖注入

手动注入bean时 , 根据条件注入bean