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

java中成员变量productDao并没有初始化,为什么可以调用方法?

伊谢尔伦伊谢尔伦2742 Il y a quelques jours629

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

  • 阿神

    阿神2017-04-18 10:58:06

    Autowired modifie la variable, et le Spring correspondant est obtenu à partir du conteneur Bean et est défini sur la valeur de la variable.

    répondre
    0
  • PHP中文网

    PHP中文网2017-04-18 10:58:06

    Vous utilisez le framework Spring et annotez le ProductController avec @Controller à gérer par Spring. Lorsque ProductController est instancié, il recherchera @Autowired et injectera d'autres instances gérées par Spring.

    répondre
    0
  • 黄舟

    黄舟2017-04-18 10:58:06

    L'annotation @Autowired est utilisée sur productDao, ce qui signifie que les instances sont automatiquement injectées depuis le contexte Spring.

    Les classes dans le contexte Spring sont toutes des singletons. Après le démarrage, ces classes seront initialisées dans le contexte, vous pourrez donc les appeler directement dans ProductController.

    répondre
    0
  • 大家讲道理

    大家讲道理2017-04-18 10:58:06

    Ceci est automatiquement injecté, ProductDaoFacade doit être déclaré comme un bean.

    ps :ProductDaoFacadeL'écriture de ce code est vraiment bizarre. C'est évidemment une interface mais aussi une façade (c'est un design pattern). En même temps, il y a tellement de constantes, ce qui est typique constant interface. En termes simples, il est recommandé d'utiliser des classes d'énumération. Si vous souhaitez en savoir plus, il est recommandé de vous référer à l'une des suggestions de java efficace————接口只用于定义类型.

    répondre
    0
  • 天蓬老师

    天蓬老师2017-04-18 10:58:06

    spring a trouvé l'annotation @Controller lors de l'analyse du package et a géré et maintenu la classe du contrôleur. Après avoir découvert @Autowired, il a démarré le mécanisme d'assemblage, l'a recherché et injecté dans le contexte des beans gérés par Spring en fonction du type d'attribut modifié. . Le terme professionnel s'appelle IOC

    .

    répondre
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:58:06

    Ce framework appelé Spring a été fait pour vous<_<

    répondre
    0
  • Annulerrépondre