setter注入,是通过在通过构造器、静态工厂或实例工厂实例好Bean后,通过调用Bean类的setter方法进行注入依赖。
spring中 bean配置文件中:
<!-- 通过setter方式进行依赖注入 --> <bean id="setterBean" class="com.spring.service.impl.HelloApiImpl2"> <property name="message" value="Hello World!"/> <property name="index" value="1"/> </bean>
传统setter方法:
HelloApi helloApi=new HelloApiImpl2() helloApi.setMessage("hello world"); helloApi.setIndex(1);
setter注入方式:
setter注入方式只有一种根据setter名字进行注入:
<property name="message" value="Hello World!"/>
name是setter注入名字,value是注入的常量值。
1.创建HelloApi接口类:
package com.spring.service; public interface HelloApi { public void sayHello(); }
2.创建实现HelloApi接口HelloApiImpl2类:
package com.spring.service.impl; import com.spring.service.HelloApi; public class HelloApiImpl2 implements HelloApi { private String message; private int index; public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public int getIndex() { return index; } public void setIndex(int index) { this.index = index; } @Override public void sayHello() { System.out.println(index+":"+message); } }
3.创建Bean 配置spring-setterDependencyInject.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- 通过setter方式进行依赖注入 --> <bean id="setterBean" class="com.spring.service.impl.HelloApiImpl2"> <property name="message" value="Hello World!"/> <property name="index" value="1"/> </bean> </beans>
4.创建SetterDependencyInjectTest测试类:
package com.spring.test; import org.junit.Test; import org.springframework.beans.factory.BeanFactory; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.spring.service.HelloApi; public class SetterDependencyInjectTest { @Test public void setterDI(){ BeanFactory beanFactory=new ClassPathXmlApplicationContext("spring-setterDependencyInject.xml"); HelloApi bean=beanFactory.getBean("setterBean",HelloApi.class); bean.sayHello(); } }
5.测试结果:
1:Hello World!
相关推荐
setter注入是Spring中最常用的注入方式之一。通过在类中定义setter方法,Spring容器可以在创建对象后,通过这些setter方法设置对象的属性值。以下是一个简单的例子: ```java public class User { private String ...
setter注入是通过Spring容器调用对象的setter方法来设置其依赖的对象。这种方式比较灵活,因为可以在运行时改变对象的依赖。例如,如果你有一个`UserService`类,它依赖于`UserDao`,你可以定义如下的setter方法: ...
综上所述,这篇博客可能涵盖了Spring中setter注入的各个方面,从基础用法到高级技巧,包括源码层面的理解,对开发者深入理解和运用Spring DI机制非常有帮助。通过阅读这篇博客,读者应该能掌握如何在实际项目中灵活...
在Spring框架中,setter注入是一种常见的依赖注入方式,它允许我们通过setter方法来设置对象的属性,从而实现组件之间的解耦。本篇文章将详细讲解如何使用setter注入来实现与MySQL数据库的连接。 首先,我们需要...
在setter注入中,Spring通过调用bean对象的setter方法来设置其依赖的属性值。以下是一个简单的步骤来展示setter注入的工作流程: 1. **定义Bean**: 创建一个类,这个类代表一个Bean,它可能包含需要注入的依赖。...
Spring之Construcotrer注入和setter注入不同的XML写法方式 ,具体效果和过程看博文http://blog.csdn.net/evankaka/article/details/44878225
本篇将重点讲解Spring中的IOC,特别是setter注入的原理和使用。 **IOC原理** IOC的核心思想是将对象的创建和管理交给一个专门的容器,即Spring的IOC容器。在传统的编程中,我们通常手动创建对象并管理它们之间的...
Spring依赖注入是Spring框架的核心特性之一,它极大地简化了Java应用程序的开发,使得对象之间的依赖关系得以解耦,提高了代码的可测试性和可维护性。本文将深入探讨Spring依赖注入的底层实现机制。 首先,我们要...
在Spring中,依赖注入主要有三种方式:构造器注入、setter注入和接口注入。构造器注入是在对象实例化时通过构造函数传入依赖;setter注入则是通过调用对象的setter方法来设置依赖;接口注入则相对较少使用,它通过...
Spring框架提供了两种主要的DI方式:构造器注入和setter注入。 1. **构造器注入**: 当类需要依赖其他对象时,Spring可以通过构造函数传递这些依赖。这样,每次创建类的新实例时,依赖项都会自动设置。例如: ``...
Spring 框架基于这些知识点,为我们提供了两种注入方式:setter 注入和构造器注入。 二、setter 注入 setter 注入是指通过 setter 方法将依赖对象注入到 Bean 中。例如,在 BookServiceImpl 中定义了引用类型属性 ...
本文将详细探讨Spring中的两种主要注入方式:构造器注入和setter注入,以及它们各自的特点和适用场景。 首先,让我们理解什么是依赖注入(Dependency Injection,简称DI)。在传统的编程模式中,一个类通常会直接...
在Spring中,DI主要通过两种方式实现:构造器注入和setter注入。构造器注入是在创建对象时通过构造函数传入依赖,而setter注入则是在对象创建后通过setter方法设置依赖。 当我们使用`@Autowired`注解时,Spring容器...
1. **setter方法注入**:Spring通过调用对象的setter方法来设置其依赖的实例。在bean配置文件中,使用`<property>`标签指定依赖属性。 2. **构造器注入**:Spring可以通过调用带有多个参数的构造函数来注入依赖。在...
下面我们将详细探讨Spring 中的三种注入方式:接口依赖注入(Type1)、setter/getter 注入(Type2,也称为属性注入)和构造方法注入(Type3)。 1. **接口依赖注入(Type1)** 这种注入方式相对不常见,主要适用于...
2. **设值注入(Setter注入)** 设值注入是通过setter方法来注入依赖。这种方式允许对象在创建后进行初始化,或者在不改变构造函数签名的情况下注入依赖。例如: ```java public class UserService { private ...
我们将深入探讨setter注入,这是Spring中最常见的注入方式之一。 ### 一、setter注入 setter注入是通过Spring容器调用对象的setter方法来设置依赖关系。以下是一个简单的示例: ```java public class UserService...
通过构造器注入、setter注入以及接口注入,我们可以根据实际需求选择合适的方式来管理对象的依赖。同时,Spring提供的`@Autowired`和`@Qualifier`等注解,以及XML和Java配置类,为开发者提供了丰富的选择,使代码...
在Spring框架中,依赖注入(Dependency Injection,简称DI)是一种重要的设计模式,它使得对象间的依赖关系得以解耦,提高了代码的可测试性和可维护性。Spring提供了多种注入方式,包括set注入、构造注入和自动注入...
在Spring框架中,setter注入是一种常见的依赖注入方式,它允许我们通过setter方法来设置对象的属性。本篇文章将深入探讨Spring框架中的setter注入,以及如何通过XML配置文件进行相关设置。 首先,我们要理解什么是...