从图片中可以看出,bean的名称默认是类名首字母小写
解决方法:修改demoService1为demoService
@Value("#{demoService.str}")
private String str;
注意:注入其他bean的属性的访问方式:#{bean的name.属性}
bean的名称是类名首字母小写,所以用类名访问也会报错,例如:用如下方式访问:
@Value(“#{DemoService.str}”)
private String str;
查看错误信息,一般看最后一个Caused by: DemoService在bean容器中没有找到,意味着DemoService没有被注入为bean,所以第一,查看此类的声明bean的注解是否存在(@Service),第二,如果存在,查看在配置文件中是否配置@ComponentScan