报错信息
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2022-07-30 12:47:40.013 ERROR 24717 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter :
***************************
APPLICATION FAILED TO START
***************************
Description:
Parameter 0 of constructor in com.example.demo.service.UserService required a bean of type 'int' that could not be found.
Action:
Consider defining a bean of type 'int' in your configuration.
给这个类添加上有参和无参构造器即可。
本次博主是想测试项目的某个地方使用getbean而不是直接new 对象的原因以及产生的影响。
最终发现单例bean与多例bean加载的不同,如果是单例bean,会在启动的时候加载出bean(这里默认是无参构造器),
如果是多例,那么会在使用的时候才构造出这个bean,当时只写了构造bean传递特定参数的构造器,然而自测的时候使用的是单例,导致初始化没有无参构造器引起报错,在此警惕。
如果需要new出来的对象没有再次注入bean,可以直接new,否则得使用getbean的方式构造出,这样构造出来的对象中注入的bean才不会是null;