以代码为例:public interface Person {}public class Worker implement Person {
}//在另一个类中注入,如
public class Company {
  @Autowired 
//   private Worker manager;  //  这样不能注入
   private  Person manager;  //  这样才能注入
}有网友说是 使用@Resource 解决问题,但是我用了还是不行。 求各位高手指教。 springautowired

解决方案 »

  1.   

    类的上面还需要加上 Annotation,@Service, @Component, @Repository 任意一个再试。要使这个类在 Spring 中注册成为一个 Spring 的 Bean,那 Spring 才会考虑他需要注入的对象。
      

  2.   

    使用了@service 但是还是不行呀
      

  3.   

    @Autowired(required=false)
    改为这样试下。
      

  4.   

    @Service
    public class Worker implement Person {
    }
     
    @Component
    public class Company {
    这两个类都加注解了?,
    @Resource
    private  Person manager;这样还注不进去?你spring配置文件里的包扫描,有没有包括这两个类
      

  5.   

    public interface Person {
     
    }
    @Service 
    public class Worker implement Person {
    }
     
    //在另一个类中注入,如
    public class Company {
      @Autowired 
       Worker workerService;
    }in applicationContext.xml
    <bean id="workerService" class="xxx.xxx.xxx.Worker" />