`

Spring 注入方法

    博客分类:
  • java
 
阅读更多

1.Spring 有3中注入的方式.  

  

1.1、构造器注入;

1.2、setter注入(最好);

1.3、注解方式注入

注入:就是给类的属性赋值

 

2.setter注入:先配置xml文件,spring框架启动后读取xml文件,通过bean的setter()方法完成属性赋值

例子 ;

java bean:

public User(String name,Integer age) 
  { String name;
     String age;
 
  ..............

}

 

 

xml配置文件:

 <bean name="user" class="com.mr.user.User">

           <property name="name" value="小强" />
           <property name="age" value="20" />

 </bean>

 

class表示要实例化的类名,<property>标签中name是属性名  value是属性的值

 

3.构造器注入:

java bean:

public User(String name,Integer age) 
  { String name;
     String age;
 
  ..............

}

 

xml配置文件:

<bean name="user" class="com.mr.user.User">
                  <constructor-arg value="小强"/>  
          
                  <constructor-arg value="20" /> 
</bean>

 <constructor-arg>标签为构造器传递参数,默认是按照顺序来传递参数

</constructor-arg>有2个属性type 和index>

type:对构造器的参数类型进行匹配,然后赋值

index,指定为构造器的哪一个属性赋值

 

4. spring 中id 和name的区别

  

<bean name="k" id="Hello">
   .......
<bean>

 
相同点:都可以获得bean对象
不同点:id唯一,name可重复(比如不同的bean可能会有同样的name)
建议:尽量使用id

 

5.setter注入代码演示

5.1 代码结构

 

5.2 Main.java

package test1;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Main {

	static BeanFactory beanFactory=null;
	
	static{
		beanFactory=new ClassPathXmlApplicationContext("test1/test.xml");
		
	}
	
	
	public static void  main(String [] args){

		Person a=beanFactory.getBean("Person",Person.class);
		a.personInfo();

	}

}

 

 

5.3Person.java

package test1;

public class Person {
  String name;
  Integer age;
  
  
	public Person() {
	super();
}

	public Person(String name,Integer age)
	{
		this.name=name;
		this.age=age;
	}
	
	public void personInfo()
	{
		System.out.println("我的名字是"+name);
		System.out.println("我的年龄是"+age.toString());
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Integer getAge() {
		return age;
	}

	public void setAge(Integer age) {
		this.age = age;
	}
	
	
}

 
 5.4 test.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-3.0.xsd">
	
	<bean id="Person" class="test1.Person">
	  <property name="name" value="张三"/>
	  <property name="age" value="20"/>
	 </bean>
	 	
</beans>

 

  • 大小: 3.3 KB
分享到:
评论

相关推荐

    关于spring boot中几种注入方法的一些个人看法

    Spring Boot 中的几种注入方法 在 Spring Boot 中,注入是一种非常重要的机制,用于将 bean 对象注入到其他 bean 对象中,以便实现松耦合和高内聚的设计目标。下面我们将对 Spring Boot 中的几种注入方法进行详细的...

    SpringSet方法注入

    我们学习了spring框架spring框架里面有3个优势第一个是轻量级的IOC也叫控制反转后来改名为DI也叫依赖注入,依赖注入里面有3中注入方法分别是set注入,构造器注入,注解注入,我传的是set注入的视频

    Spring三种注入方式(三)

    Spring会查找带有`@Autowired`注解的setter方法,并自动调用这些方法进行注入。这种方式更为灵活,可以在对象创建后随时注入依赖,但可能会导致对象在不完整的情况下被使用。示例如下: ```java public class ...

    spring的注入方式

    在Spring框架中,依赖注入(Dependency Injection,简称DI)是一种重要的设计模式,它使得对象间的依赖关系得以解耦,提高了代码的可测试性和可维护性。Spring提供了多种注入方式,包括set注入、构造注入和自动注入...

    Spring注入的方式

    - 示例:`example4forSetter`可能是一个展示setter注入的例子,包含了注入依赖的setter方法,Spring容器会在初始化后调用这些方法注入依赖。 选择构造器注入还是setter注入取决于具体需求。构造器注入适用于核心...

    Spring中的方法注入

    【Spring中的方法注入】 在Spring框架中,方法注入是一种非传统的依赖注入形式,它允许我们通过调用对象的方法来设置其内部状态或执行特定操作。这种方法通常用于在对象初始化之后或者在某些特定时刻注入依赖,而...

    Spring的注入方式详解

    下面我们将详细探讨Spring 中的三种注入方式:接口依赖注入(Type1)、setter/getter 注入(Type2,也称为属性注入)和构造方法注入(Type3)。 1. **接口依赖注入(Type1)** 这种注入方式相对不常见,主要适用于...

    spring注入配置文件

    spring注入配置文件,使用注解注入的

    Spring定义bean的三种方式和自动注入

    这种方式需要Bean有对应的setter方法,以便Spring进行依赖注入。 ```xml 张三"/&gt; 李四"/&gt; ``` 2. **基于注解的Bean定义**: 自Spring 2.5引入注解支持后,我们可以使用注解来简化配置。在`Student`...

    Web服务器端在Action、dao、service之外实现spring注入

    我们在开发过程中经常会发生spring注入错误或失败的情况,其实Web服务器端在Action、dao、service包之内是很容易实现的,在这些包之外实现spring注入就不容易了,总是出错,其实根本原因是无法获得相应的spring上...

    spring依赖注入例子

    Spring框架的依赖注入(Dependency Injection,简称DI)是其核心特性之一,它使得对象之间的关系在运行时由Spring容器管理,而不是硬编码在类内部。这样可以提高代码的可测试性和可维护性,因为对象的依赖关系变得松...

    spring注入原理

    在本篇文章中,我们将深入探讨Spring注入原理,特别是注解方式的实现,帮助你更好地理解和掌握这一技术。 ### 1. 依赖注入(Dependency Injection) 依赖注入是Spring的核心特性,它允许我们解耦组件间的依赖关系...

    Spring IOC之方法注入

    本文将深入探讨Spring中的一个特殊概念——方法注入,它是IOC的一种扩展形式。 方法注入允许我们在运行时通过容器调用特定的方法来传递依赖。这种方法与传统的构造器注入和属性注入相比,提供了更大的灵活性,因为...

    Spring依赖注入检查.

    对于非POJO对象或者有特殊初始化需求的对象,Spring提供工厂方法来创建并注入依赖。 6. **@Qualifier注解**: 当有多个相同类型的bean,而我们需要指定具体哪一个时,`@Qualifier`注解可以用来明确指定。 7. **@...

    spring依赖注入底层详解

    2. AOP:Spring的AOP框架用于在运行时动态地修改程序的行为,比如在依赖注入时,AOP代理可以在目标对象的方法调用前后插入相应的行为,如检查依赖是否已注入,或者在注入过程中执行一些额外的操作。 此外,Spring还...

    SpringIoc注入

    Spring容器调用带有@Autowired注解的setter方法,将相应的依赖注入到对象中。 3. **接口注入**:Spring不直接支持,但在某些特殊情况下,可以通过实现特定接口并在接口中定义注入点来实现。 **三、@Autowired注解*...

    spring注入文件写法

    综上所述,Spring注入文件的写法涉及了数据源、Hibernate集成、事务管理和DAO的声明及配置。通过这种方式,Spring能够提供一个灵活且强大的基础设施,支持数据库操作和事务管理,同时保持代码的整洁和模块化。

    第五章 Spring4 自动装配、方法注入

    在本章中,我们将深入探讨Spring框架的核心特性之一——自动装配和方法注入。Spring作为一款广泛应用的Java企业级开发框架,极大地简化了依赖管理,提高了代码的可测试性和可维护性。自动装配和方法注入是Spring实现...

    用Spring注入Servlet文件 实现注入set

    使用spring的依赖注入,来实现servlet中注入dao层

    Spring 依赖注入 构造方法注入

    NULL 博文链接:https://zhangyulong.iteye.com/blog/856986

Global site tag (gtag.js) - Google Analytics