>  Q&A  >  본문

java - @Component重新给bean命名后,为什么@Resource找不到?

CompactDisc有多个实现类,我想要注入其中的一个

@Component
public class SgtPeppers implements CompactDisc {
    private String title = "Sgt. Pepper's Lonely Hearts Club Band";
    private String artist = "The Beatles";
    public void play() {
        System.out.println("Playing " + title + " by " + artist);
    }

}

用默认的bean可以

但是我把bean id改成其他,比如

@Component("segment")
public class SgtPeppers implements CompactDisc {
    ...
}

怎么就找不到了?

3月10号更新,今天又可以了,真是奇怪,还是没找到出现问题的关键

3月17号:感觉是IDE的问题

PHP中文网PHP中文网2741일 전1025

모든 응답(2)나는 대답할 것이다

  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:51:10

    절대 찾을 수 없습니다. @Component를 사용하여 자동으로 주입하면, 주입된 이름은
    @Resource로 되어 있습니다. 이름이 틀렸는데 어떻게 알 수 있나요?
    자동 주입된 이름은 클래스 이름을 기준으로 주입된 이름이고 첫 글자는 소문자라는 점을 추가하세요

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-04-18 10:51:10

    @Component("segment")를 지정해야 합니다

    회신하다
    0
  • 취소회신하다