ホームページ  >  に質問  >  本文

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

伊谢尔伦伊谢尔伦2742日前633

全員に返信(6)返信します

  • 阿神

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

    Autowired修饰了该变量,Spring容器中获取对应的Bean はこの変数の値に設定されます。

    返事
    0
  • PHP中文网

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

    Spring フレームワークを使用し、Spring によって管理されるように ProductController に @Controller アノテーションを付けます。ProductController がインスタンス化されると、@Autowired が検索され、Spring によって管理される他のインスタンスが挿入されます。

    返事
    0
  • 黄舟

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

    productDao は @Autowired アノテーションを使用します。これは、インスタンスが Spring コンテキストから自動的に挿入されることを意味します。

    Spring コンテキスト内のクラスはすべてシングルトンであり、起動後、これらのクラスはコンテキスト内で初期化されるため、ProductController で直接呼び出すことができます。

    返事
    0
  • 大家讲道理

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

    これは自動的に挿入されます。ProductDaoFacade は Bean として宣言される必要があります。

    追記:ProductDaoFacade这个代码写得真是太奇怪了,明明是个interface还facade(这是一个设计模式)。同时,还放了那么多常量,这是典型的constant interface。简单来说,建议使用枚举类。如果想深入了解一下,建议参考effective java中的建议之一————接口只用于定义类型

    返事
    0
  • 天蓬老师

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

    Spring はパッケージのスキャン中に @Controller アノテーションを発見し、コントローラー クラスを管理および維持しました。 @Autowired を発見した後、アセンブリ メカニズムを開始し、変更された属性の型に従って Spring が管理する Bean のコンテキストを検索し、それを注入しました。専門用語はIOC

    と呼ばれます

    返事
    0
  • 伊谢尔伦

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

    Chun と呼ばれるこのフレームワークがあなたのためにそれをしてくれました<_<

    返事
    0
  • キャンセル返事