问题
首先有构造方法的Bean是可以通过private final来引入的,如下图中的Controller中对service的引用
process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAd3VfNTU1NTU=,size_20,color_FFFFFF,t_70,g_se,x_16)
但是在service引用别的bean时却不能用private final的形式,这是为什么?
使用private引用也会导致bean为空
原因
注意文章的第一句话有构造方法的Bean是可以通过private final来引入的,而上述的Controller中是加了@AllArgsConstructor注解的,它会给这个类加上全参的构造函数,这样就会在该类初始化时同步给属性初始化,也就是调用各引用Bean的初始化方法
因此就可以使用private final的形式来进行引用bean了
注意同一个类不要使用两种引入方式,要么用private final,要么用@Autowried
原文地址:https://wu55555.blog.csdn.net/article/details/121515414