zoukankan      html  css  js  c++  java
  • 3. 技术专题

    • 过程
      • 定义依赖关系(定义当前调用者需要注入哪些对象)
        • 通过构造函数注入
          • 比如angular和ASP.NET Core,可以在使用者的构造函数的参数列表中定义依赖哪些类
            • 不论是angular/nodejs/ASP.NET,现在流行的现代的注入方式,都是通过构造函数中定义的参数列表来一层层自动注入
        • 通过成员变量注入
          • 比如Spring,可以在调用者的类定义中,通过@Autowire定义哪些成员对象是需要被注入的
      • 在某些地方定义一些接口在实际使用时,应该注入什么对象实例
        • Spring中,在Config类中,通过命名等匹配方式,定义应该注入什么对象及其构造过程
        • ASP.NET Core中,在Startup.cs的ConfigureServices()中,通过services.Add Singleton(),services.AddTransient()等定义注入(注入Swagger等第三方库,底层其实也是调的这两个函数)。
        • Angular中,所有的Service类都默认作为可注入的对象,只要在调用者的构造函数中指明注入即可
      • 入口
        • 调用接口时注入
          • 会自动注入接口所需要的前面已经预定义好的类
        • 程序启动时注入。
          • Spring
            • 可以通过@Component+@Scheduled指定开机启动的定时任务
              • 其中可以调用通过@Service+@Async定义的异步任务
          • ASP.NET Core
            • 实现IHostedService接口,并在Startup.cs的ConfigureServices()中,通过services.AddHostedService()定义注入。
            • 在Startup.cs的Configure()参数列表中列出。当然,如果该类中定义了Start函数(比如message queue的consumer),那么还是要在注入实例后调用一下的。
  • 相关阅读:
    C# WinForm dataGridView 技巧小结
    Win7设置局域网共享
    vs2010快捷键大全
    C# WebBrowser.DocumentCompleted 多次调用解决方法
    为应用程序池 'DefaultAppPool' 提供服务的进程关闭时间超过了限制
    VB高清图标制作方法
    sqlite 中文排序
    一个vbs文件将指定文件夹下的文件名输出到指定文件夹下
    用DOS命令获取文件列表
    文件搜索神器 Everything
  • 原文地址:https://www.cnblogs.com/wyp1988/p/14340290.html
Copyright © 2011-2022 走看看