`

spring自动装配Bean

 
阅读更多

参考下面的文章:

http://www.tuicool.com/articles/naYNVz

 

简单的例子,示例按byType 和 byName自动装配Bean:

package com.spring.auto.wire;

import java.util.List;
import java.util.Map;

public class Company {

	private String name;
	private Department  department;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Department getDepartment() {
		return department;
	}
	public void setDepartment(Department department) {
		this.department = department;
	}
	
	@Override
	public String toString() {
		return "Company [name=" + name + ", department=" + department + "]";
	}

	
}

 

package com.spring.auto.wire;

public class Department {
	private String name;

	public String getName() {
		return name;
	}

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


	@Override
	public String toString() {
		return "Department [name=" + name + "]";
	}

}

 

package com.spring.auto.wire;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Main {
	public static void main(String args[]){
		ApplicationContext ctx = new ClassPathXmlApplicationContext("autowire.xml");
		
		//按名字自动装配Bean
		Company company = (Company) ctx.getBean("company");
		System.out.println(company);
		
		//按类型自动装配Bean
		Company company1 = (Company) ctx.getBean("company1");
		System.out.println(company1);
	}
}

 

 

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"
	xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

	<bean id="department" class="com.spring.auto.wire.Department" p:name="WEC"></bean>
	<bean id="company" class="com.spring.auto.wire.Company" p:name="WG" autowire="byName" ></bean>
	
	<bean id="company1" class="com.spring.auto.wire.Company" p:name="Wc" autowire="byType" ></bean>
</beans>

 输出的结果

Company [name=WG, department=Department [name=WEC]]
Company [name=Wc, department=Department [name=WEC]]

 

分享到:
评论

相关推荐

    Spring自动装配Bean实现过程详解

    配置文件中需要通过ref装配Bean,但设置了autowire="byName",Spring会在配置文件中自动寻找与属性名字personDao相同的bean,找到后,通过调用setPersonDao(PersonDao personDao)方法将id为personDao的bean自动装配...

    spring自动装配例子

    ean的自动装配,有4种 (1)no:不做任何操作 (2)byName:根据属性 名 自动装配,设值注入 &lt;bean id="xxx" class="xxx" &gt;&lt;/bean&gt; (3)byType:根据属性 类型 自动装配,相同类型多个会抛出异常,设值注入 &lt;bean...

    Spring自动装配解析

    在Spring的XML配置文件中,可以通过`&lt;beans&gt;`标签的`autowire`属性来全局设置自动装配策略,或者在单个`&lt;bean&gt;`标签中通过`autowire`属性指定某一个bean的自动装配方式。 4. 使用注解进行自动装配 Spring 2.5引入了...

    Spring实现自动装配

    2. **基于类型的自动装配(By Type Auto-Wiring)**:这是最常用的自动装配方式,Spring会查找与目标bean类型匹配的bean,并将其注入。如果有多个匹配的bean,Spring会抛出异常。可以在bean定义中使用`autowired`...

    spring自动装配

    - `autodetect`模式:尝试通过`byType`和`byName`来自动检测并装配Bean。 - `default`模式:如果没有指定其他方式,将使用默认的装配策略。 描述中提到的博文链接指向了一个ITeye上的博客文章,可能详细解释了...

    JSP Spring 自动化装配Bean实例详解

    JSP Spring自动装配Bean实例详解 Spring框架是Java企业级应用开发的事实标准,它提供了全面的编程和配置模型。在Spring中,自动装配(autowiring)功能可以极大地简化Java对象的创建和组装。JSP(Java Server Pages...

    spring自动生成bean项目

    为了简化这一过程,Spring提供了一种自动创建Bean的机制,这就是所谓的"代码生成"或者"Bean自动生成"。本项目"spring自动生成bean项目"旨在通过自动化的方式,帮助开发者根据数据库表结构快速生成对应的Java Bean...

    Java注解机制之Spring自动装配实现原理详解

    例如,使用@AttachAnnotation注解来标记某个方法,然后使用反射机制来获取注解信息,并根据注解信息来自动装配Bean对象。 Java注解机制之Spring自动装配实现原理详解是指Spring框架中使用Java注解机制来实现自动...

    Spring 自动装配及其注解

    1. **@Autowired**:这是最常用的注解,用于自动装配bean。Spring会尝试找到类型匹配的bean进行注入。如果存在多个候选bean,则可以通过`@Qualifier`进一步指定。 2. **@Qualifier**:与`@Autowired`配合使用,用于...

    spring装配bean实例代码

    本文将深入探讨Spring装配Bean的实例代码,帮助你更好地理解这一关键概念。 首先,Spring装配Bean主要有两种方式:XML配置和注解配置。在本例中,我们将重点关注XML配置,对应的压缩包文件名为“springxmldemo”,...

    spring自动装配项目struts2

    1. Spring的自动装配特性,包括bean的初始化和依赖注入。 2. Struts2的MVC架构,用于处理用户请求和控制流程。 3. Hibernate作为ORM框架,简化数据库操作。 4. 通用DAO设计模式,提高代码复用性。 在实际项目中,...

    在Spring中自动装配Bean的属性

    Spring 中自动装配 Bean 的属性 在 Spring 框架中,自动装配 Bean 的属性是非常重要的一部分,今天我们将为大家分享关于在 Spring 中自动装配 Bean 的属性的知识。 首先,Spring 的最基本的能力就是 DI,即依赖...

    4Spring自动装配——annotation resource方式

    在Spring框架中,自动装配(Auto-Wiring)是一种简化依赖注入(Dependency Injection,DI)配置的方式,它允许Spring容器自动管理Bean之间的依赖关系。本文将深入探讨如何通过注解(Annotation)和`@Resource`来实现...

    spring入门教程之bean的继承与自动装配详解

    本文将深入探讨Spring Bean的继承与自动装配。 首先,让我们了解Bean的基本定义。在Spring配置文件中,`&lt;beans&gt;`元素作为根元素,包含了一系列`&lt;bean&gt;`子元素。每个`&lt;bean&gt;`元素定义了一个Bean实例,它由一个唯一的...

    spring装配bean的3种方式总结

    Spring装配Bean的3种方式总结 Spring框架是Java EE应用程序的核心框架之一,它提供了依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)等功能。依赖注入是Spring框架的核心...

    spring自动扫描和管理Bean的示例

    - **@Autowired**:用于自动装配Bean的依赖。Spring会尝试根据类型或名称找到合适的Bean进行注入。 - **@Qualifier**:配合@Autowired使用,当有多个相同类型的Bean时,可以指定要注入的具体Bean。 - **@Scope**:...

    Spring的自动装配Bean的三种方式

    Spring框架的自动装配Bean功能是为了简化配置,使得开发者无需在XML配置文件中显式指定Bean间的依赖关系。本文将详细讲解Spring中自动装配Bean的三种主要方式:byName、byType以及constructor。这些方法帮助Spring的...

    Spring中的自动装配有哪些限制?.docx

    在Spring框架中,自动装配(Auto-Wiring)是一种便捷的方式来管理bean之间的依赖关系,它能够自动将所需的bean注入到目标bean中,而无需显式配置。然而,自动装配并非适用于所有场景,它存在一些限制。以下是一些...

    Spring In Action 使用@Autowired 和@ Resource 自动装配Bean

    在Spring框架中,`@Autowired`和`@Resource`都是用于自动装配Bean的重要注解,它们简化了依赖注入的过程,使得代码更加简洁、易于维护。本文将深入探讨这两个注解的使用、区别以及如何在实际开发中应用它们。 首先...

    Spring自动装配模式表

    当设置自动装配模式为`constructor`时,Spring容器会根据Bean的构造器参数类型来查找容器中具有相同类型的其他Bean,并将其作为构造器参数注入到当前Bean中。这种方式适用于依赖项只能通过构造器初始化的情况。 **...

Global site tag (gtag.js) - Google Analytics