spring IOC注入
IOC
的基本概念是:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器负责将这些联系在一起。
IoC
设计模式重点关注组件的依赖性、配置以及生命周期。
Ioc
设计模式实现了
“
面向接口编程,而不是实现
”
的原则。
IOC的三种依赖注入的方式:
第一种:setter方法注射 spring中常用的方式
public class GreetingServiceImpl implements GreetingService{
private String name;
private String say;
public GreetingServiceImpl(String name,String say) {
this.name = name;
this.say=say;
}
@Override
public void say() {
System.out.println("I want to say"+name+"。。。。。。"+say);
}
public void setSay(String say) {
this.say = say;
}
}
<beans>
<bean id="greetingServiceImpl" class="cn.csdn.service.GreetingServiceImpl">
<property name="say">
<value>你还好吗?</value>
</property>
</bean>
</beans>
第二种:构造器注射
1、 根据构造器的索引注入
public class GreetingServiceImpl implements GreetingService{
private String name;
private String say;
public GreetingServiceImpl(String name,String say) {
this.name = name;
this.say=say;
}
@Override
public void say() {
System.out.println("I want to say"+name+"。。。。。。"+say);
}
}
<beans>
<bean id="greetingServiceImpl" class="cn.csdn.service.GreetingServiceImpl">
<!-- 构造器的索引注入-->
<constructor-arg index="0">
<value>晓丽</value>
</constructor-arg>
<constructor-arg index="1">
<value>想你了</value>
</constructor-arg>
</bean>
</beans>
2、 根据构造器的类型
public class GreetingServiceImpl implements GreetingService{
private String name;
private String say;
public GreetingServiceImpl(String name,String say) {
this.name = name;
this.say=say;
}
@Override
public void say() {
System.out.println("I want to say"+name+"。。。。。。"+say);
}
}
<beans>
<bean id="greetingServiceImpl" class="cn.csdn.service.GreetingServiceImpl">
<!-- 构造器的类型注入 -->
<constructor-arg type="java.lang.String">
<value>晓丽</value>
</constructor-arg>
<constructor-arg type="java.lang.String">
<value>我还好</value>
</constructor-arg></bean>
</beans>
3、通过接口注入(没有实例)
分享到:
相关推荐
Spring 5.3.14作为Spring Framework的重要里程碑,引入了多项改进和修复,旨在提升开发者体验并优化应用程序性能。这个版本不仅包含对Java 16和17的支持,还增强了对响应式编程的支持,这是Spring 5的一大特色。此外...
3. **配置支持**:通过Spring的IoC(Inversion of Control)容器,开发者可以灵活地配置Flex应用的各个组件,如服务代理、消息通道等。 4. **SBI(Spring BlazeDS Integration)**:这是Spring Flex的一个重要组成...
#### 二、Spring Framework 4.x的新特性与增强 **3. Spring Framework 4.0的新特性和增强** - **改进的入门体验**:Spring 4.0版本提供了更加友好的入门教程,帮助开发者更快地上手。 - **移除过时的包和方法**:...
5.1.4版本是Spring的重要里程碑,引入了诸多新特性和改进,旨在提升性能、增强可维护性以及优化开发者体验。下面我们将深入探讨Spring Framework 5.1.4的源码,了解其背后的设计理念和技术实现。 首先,源码分析从`...
其中,IoC容器是Spring的基础,它管理着应用中的对象及其依赖关系,使得代码更加松耦合,易于测试和维护。AOP则是Spring提供的一种处理横切关注点的方式,比如日志、事务管理等,可以被模块化并独立于业务逻辑。 在...
#### 二、Spring Framework 4.x 新功能与改进 **3. Spring Framework 4.0 新功能与增强** - **改进的入门体验**:通过简化配置和提供更多的示例来帮助新手更快上手。 - **删除过时的包和方法**:清理不再使用的...
标题中的"spring-01-ioc1.rar"表明这是一个关于Spring框架中控制反转(Inversion of Control,简称IoC)的初级教程资源。Spring是Java领域广泛应用的一个轻量级开源框架,它的核心特性就是IoC,它使得应用程序的组件...
5.2.14.RELEASE是Spring框架的一个稳定版本,包含了诸多增强特性和修复的bug,确保了开发者的体验和应用的稳定性。 1. **Spring核心**:Spring的核心模块包括IoC(Inversion of Control)容器和依赖注入...
Spring的IoC(Inversion of Control)容器和AOP(Aspect-Oriented Programming)支持在5.3.2中得到加强,包括对Java配置的优化,以及对注解的更精细控制。此外,还增强了Bean生命周期管理,如条件化 Bean 的创建和...
4.3.6版本作为Spring的一个稳定版本,引入了多项改进和优化,为开发者带来了更好的体验。本文将深入探讨Spring Framework 4.3.6的关键特性和使用技巧。 一、Spring Framework概述 Spring Framework以其模块化设计...
2. **Spring MVC**:在Spring 5.3.17中,Spring MVC持续优化了Web应用的开发体验。它提供了模型-视图-控制器的架构模式,使得开发者可以更轻松地处理HTTP请求和响应,支持RESTful风格的接口,增强了对WebSocket的...
1. `spring-core.jar`:Spring的基础模块,提供核心工具和支持,如IoC(Inversion of Control)容器和资源访问。 2. `spring-beans.jar`:管理bean的定义和生命周期,是IoC的核心。 3. `spring-context.jar`:构建于...
Spring Boot 提供了一种“开箱即用”的体验,减少了繁杂的配置,并且内置了多种常用的第三方库,如 Tomcat 服务器、Thymeleaf 模板引擎等。 总的来说,Spring 框架 5.3.10 版本的完整包为开发者提供了一个强大而...
1. **核心容器**:Spring的核心在于其IoC(Inversion of Control)和DI(Dependency Injection)容器。5.0.19.RELEASE版本中的Bean工厂和ApplicationContext接口,使得开发者能够轻松管理对象的生命周期和依赖关系,...
在这个版本中,Spring引入了许多改进和新特性,旨在提升开发者体验并优化应用程序的性能。 1. **依赖注入(Dependency Injection, DI)和控制反转(Inversion of Control, IOC)** Spring的核心特性之一是依赖注入...
标题:spring3.1-framework-reference 描述:spring-framework-reference 标签:spring-framework-...这些新特性不仅扩展了Spring框架的功能边界,还优化了开发者的编码体验,使其成为构建现代Java应用的强大工具集。
- 实践项目,如构建一个数据导入、清洗、分析的流程,体验Spring Data Hadoop带来的便利性。 综上,Spring Data Hadoop 2.2.0.RELEASE是开发Hadoop应用的强大工具,结合Spring的灵活性和Hadoop的处理能力,为大...
Spring Framework是Spring.io开发团队推出的一款开源企业级应用开发框架,它旨在简化Java EE(Enterprise Edition)开发,通过提供IOC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向...
#### 二、Spring Framework 4.x新特性与增强 ##### 2.1 Spring Framework 4.0的新特性 - **改进的入门体验(Improved Getting Started Experience)**:简化了初始配置过程,降低了学习曲线。 - **移除过时的包和方法...