spring注解使用不当产生的一个Bug

时间:2022-05-16 15:34:57

Controller 类文件:

public Controller {
@Autowired
private Service service;

public void contro(){
service.serv();
}

public static void main(String[] args){
new Controller().contro();
}
}

Service 类文件:

@Service
public Service {
public void serv(){
System.out.println("service ......");
}
}

以上两个类皆在spring扫描的目录下。
既然如此,很正常的两个类怎么会隐藏着bug呢?
江湖高手肯定一眼就瞧出了此中玄机,在下就冒昧班门弄斧!
Bug因何而出呢?就先卖个关子,明天再来解答。

———-分界线

只有当类上有spring的注解,spring才会去扫描该类,同时该类下的其他注解才能生效,否则比如@Autowired不会生效,被注入的变量是null,那么令人讨厌的null异常就出现了。