Maison  >  Questions et réponses  >  le corps du texte

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 Il y a quelques jours1021

répondre à tous(2)je répondrai

  • 伊谢尔伦

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

    Vous ne le trouvez certainement pas. Vous utilisez @Component pour l'injecter automatiquement, puis le nom injecté est
    @Resource est basé sur le nom, et votre nom est faux. Comment pouvons-nous y parvenir ?
    Ajoutez que le nom injecté automatiquement est le nom injecté en fonction du nom de la classe et que la première lettre est en minuscule

    répondre
    0
  • 天蓬老师

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

    Vous devez spécifier @Component("segment")

    répondre
    0
  • Annulerrépondre