当前位置: 首页 > news >正文

wordpress 众筹网站包头做网站的公司招聘信息

wordpress 众筹网站,包头做网站的公司招聘信息,极客学院 wordpress,如何修改wordpress站名一、Spring中的依赖注入和依赖反转 依赖注入(Dependency Injection) 概念 依赖注入是一种设计模式,它允许在对象创建时将其依赖的对象传递给它,而不是让对象自己去创建或查找依赖对象。在Spring中,依赖注入是控制反转…

一、Spring中的依赖注入和依赖反转

  1. 依赖注入(Dependency Injection)
    • 概念
      • 依赖注入是一种设计模式,它允许在对象创建时将其依赖的对象传递给它,而不是让对象自己去创建或查找依赖对象。在Spring中,依赖注入是控制反转(Inversion of Control,IoC)的一种具体实现方式。
    • 注入方式
      • 构造函数注入
        • 通过类的构造函数来注入依赖对象。例如:
public class MyClass {private MyDependency dependency;public MyClass(MyDependency dependency) {this.dependency = dependency;}
}

在Spring配置中,可以这样配置:

<bean id="myDependency" class="com.example.MyDependency"/>
<bean id="myClass" class="com.example.MyClass"><constructor-arg ref="myDependency"/>
</bean>

或者使用Java配置:

@Configuration
public class AppConfig {@Beanpublic MyDependency myDependency() {return new MyDependency();}@Beanpublic MyClass myClass() {return new MyClass(myDependency());}
}
 - **Setter方法注入**- 通过类的Setter方法来注入依赖对象。例如:
public class MyClass {private MyDependency dependency;public void setDependency(MyDependency dependency) {this.dependency = dependency;}
}

在Spring配置中:

<bean id="myDependency" class="com.example.MyDependency"/>
<bean id="myClass" class="com.example.MyClass"><property name="dependency" ref="myDependency"/>
</bean>

或者Java配置:

@Configuration
public class AppConfig {@Beanpublic MyDependency myDependency() {return new MyDependency();}@Beanpublic MyClass myClass() {MyClass myClass = new MyClass();myClass.setDependency(myDependency());return myClass;}
}
 - **接口注入(不常用)**- 通过实现特定的接口来注入依赖对象。这种方式在实际应用中相对较少使用。
  1. 依赖反转(Dependency Inversion)
    • 概念
      • 依赖反转原则(DIP)是面向对象设计的五大原则之一。它强调高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节,细节应该依赖抽象。在Spring中,依赖反转主要体现在将对象的创建和依赖关系的管理交给容器来完成。
    • 在Spring中的体现
      • 对象创建的反转
        • 在传统的编程方式中,对象通常是由使用它的类自己创建的。例如:
public class MyService {private MyRepository repository = new MyRepository();public void doSomething() {repository.saveData();}
}

在Spring中,对象的创建由容器负责。例如:

@Service
public class MyService {private MyRepository repository;@Autowiredpublic MyService(MyRepository repository) {this.repository = repository;}public void doSomething() {repository.saveData();}
}

这里的MyRepository对象不是由MyService自己创建,而是由Spring容器创建并注入到MyService中。
- 依赖关系管理的反转
- 传统方式下,对象之间的依赖关系是在代码中硬编码的。而在Spring中,依赖关系由容器根据配置来管理。通过配置文件(如XML配置文件)或注解(如@Autowired@Qualifier等)来指定对象之间的依赖关系,使得代码更加灵活和易于维护。例如,在XML配置中可以指定多个不同实现的依赖关系:

<bean id="myRepositoryImpl1" class="com.example.MyRepositoryImpl1"/>
<bean id="myRepositoryImpl2" class="com.example.MyRepositoryImpl2"/>
<bean id="myService" class="com.example.MyService"><property name="repository" ref="myRepositoryImpl1"/>
</bean>

可以通过修改配置文件轻松地切换MyService所依赖的MyRepository的具体实现。

http://www.yayakq.cn/news/861382/

相关文章:

  • 凡科建的网站可以做seo吗汉中专业网站建设服务
  • 总公司网站备案后 分公司网站还需要备案吗北京市建设工程信息网站
  • 郑州模板网站建设wordpress china第三性
  • 萧县城乡建设局网站手机网站备案费用
  • 泵 品牌网站建设萧县城乡建设局网站
  • dw做网站需要数据库么大丰建站
  • 网站上的图片做多大网站工程前端
  • asp.net做学校网站首页企业logo商标
  • 常州模板网站建设山西中宇建设集团网站
  • 美团网站网站建设发展重庆佳宇建设集团网站
  • 石台做网站地方门户网站设计
  • 南通高端网站设计建设大学生做企业网站
  • 做外贸建网站需要推广吗简易app开发软件
  • 湖北省两学一做网站建设银行锦州分行网站
  • 个人网站免费域名获取自建站多少钱
  • 黄山网站设计设计师联盟官网效果图
  • wordpress设置ssl网站打不开WordPress怎么添加音乐
  • 国内最好的网站建设公司自己建设网站难不难
  • 无锡设计师网站专业的网站建设公司哪家好
  • 网站建设平台价位企业管理咨询与诊断
  • 毕节做网站用什么程序做资讯类网站
  • 国家再就业免费培训网网站seo插件
  • 网站架设标准网页翻译软件
  • 湛江网站制作系统网站制作 语言选择怎么做
  • 富平网站建设太原市做网站公司
  • 来年做啥网站致富合肥软件公司排名
  • 网站建动态密码是否收费自助建网站市场
  • 爱站工具包做网站为什么每年都要续费
  • 乐清网站艰涩免费推广的平台
  • 基于html5的移动端网站开发徐州做英文网站的公司