Java aws lambda函数与spring自连线依赖项
在amazon aws lambda中执行代码时,my@autowired spring依赖项为空。如果没有加载上下文,这是有意义的,但我认为SpringBeanAutowiringSupport会有所帮助。如何在amazon lambda中正确注入依赖项 这是我的代码,它有空的自动连线字段,但在其他方面工作正常(如果我用新的替换自动连线:Java aws lambda函数与spring自连线依赖项,java,spring,amazon-web-services,amazon-s3,aws-lambda,Java,Spring,Amazon Web Services,Amazon S3,Aws Lambda,在amazon aws lambda中执行代码时,my@autowired spring依赖项为空。如果没有加载上下文,这是有意义的,但我认为SpringBeanAutowiringSupport会有所帮助。如何在amazon lambda中正确注入依赖项 这是我的代码,它有空的自动连线字段,但在其他方面工作正常(如果我用新的替换自动连线: @Component public class ApplicationEventHandler { @Autowired private Foo foo;
@Component
public class ApplicationEventHandler {
@Autowired
private Foo foo;
public ApplicationEventHandler() {
logger.info("I'm sure the constructor is being called");
SpringBeanAutowiringSupport.processInjectionBasedOnCurrentContext(this);
//doesn't seem to help
}
public void deliveryFailedPermanentlyHandler(SNSEvent event, Context context) throws IOException {
foo.doStuff() // causes NPE
}
提前感谢!github上的这个项目为我正在尝试的工作提供了一个很好的模板: 谈论DI: 最小化依赖项的复杂性。更喜欢简单的依赖项 在启动时快速加载的框架 例如,更喜欢简单的Java依赖项注入(IoC)框架 像或,比更复杂的像 因此,我建议您使用(因为Square的Dagger 1.x已经被弃用了)。它提供了以下好处:
- 轻量级框架,集成很少,Java接口/注释配置和编译时代码生成绑定
- 非常小的尺寸
- 尽早失败(编译时,而不是运行时)
- 性能-与手写代码一样快,并且不需要在框架中进行编码