`

byName讲解

阅读更多

根据属性名自动装配。此选项将检查容器并根据名字查找与属性完全一致的bean,并将其与属性自动装配。例如,在bean定义中将autowire设置为by name,而该bean包含student属性(同时提供setStudent(..)方法),Spring就会查找名为studentbean定义,并用它来装配给student属性。

Xml中的文件的配置如下:

<bean id="student" class="com.csdn.bean.Student" >
	<property name="name"><value>朱磊</value></property>
	</bean>
	<bean id="GreetingServliceImpl" class="com.csdn.service.GreetingServliceImpl"
		autowire="byName" dependency-check="all">
		<property name="say" value="hello"></property>
	</bean>
</beans>

 

 

Student中的如下

 

package com.csdn.bean;

public class Student {
	private String name;


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

}

 

 

package com.csdn.service;

import com.csdn.bean.Student;

public class GreetingServliceImpl implements GreetingServlice {
	private String say;

	@Override
	public void say() {
		System.out.println("这是我说的话" + say);
	}

	public void setSay(String say) {
		this.say = say;
	}

	private Student student;

	public void setStudent(Student student) {
		this.student = student;
	}
}

 

 

值得注意的是:自动装配指的是装配bean的值而不是属性值,网上很多文章都有错误我特意的查了查资料。还有就是而该bean包含student属性(同时必须提供setStudent(..)方法),byName根据set依赖注入的。

如果xml文件中包括多个相容类型的bean利用byName会出错。(这里说的相同类型包括,如类B继承类A,如果bean中定义了类A和类B 都会出错)错误如下。

   org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name '类名' defined in file

 

 

 

 

分享到:
评论

相关推荐

    DiagBox TLCD Fix by Namek

    【标题】"DiagBox TLCD Fix by Namek" 是一个专门针对Peugeot Citroen汽车品牌诊断工具DiagBox的修复程序。该程序由知名汽车电子专家Namek开发,旨在解决DiagBox与TLCD(Touch Screen LCD,触摸屏液晶显示器)之间的...

    springioc的详细讲解

    Spring容器通过setter方法、构造函数或自动装配(byName, byType, autowire)来注入Bean的依赖。这样,我们不需要在代码中手动创建和管理对象,而是由Spring容器自动完成。 4. **Bean的作用域**:Spring提供了多种...

    SQL注入漏洞讲解

    $query = "SELECT first_name, last_name FROM users WHERE user_id='$id';"; // 执行查询 $result = mysql_query($query) or die('&lt;pre&gt;' . mysql_error() . '&lt;/pre&gt;'); // 处理结果 $num = mysql_num_...

    SQL语句大全讲解

    5. **限制返回的行数**:`TOP n`或`TOP n PERCENT`限制返回的数据行数,如`SELECT TOP 2 * FROM table_name`返回前两行,`SELECT TOP 20 PERCENT * FROM table_name`返回前20%的行。 **二、FROM子句** FROM子句指定...

    sql语句 各种sql语句的详细用法与讲解

    在这个文档“sql语句妙用,各种sql语句的详细用法与讲解.doc”中,我们预计将深入探讨以下SQL语句的主要类别及其用法: 1. **数据查询(SELECT语句)**: - **基本查询**:从单个或多个表中选取数据,例如`SELECT ...

    简单讲解sql语句中的group by的使用方法

    1.概述 group by 就是依据by 后面...GROUP BY column_name 3.举例说明 我们有这样一个订单表:   我们希望统计每一个用户订单的总金额,我们可以借助 group by 来实现: select Customer,sum(OrderPrice) as total_

    数据库查询习题讲解数据库查询习题讲解.ppt

    数据库查询是数据库系统中的核心操作,它涉及到对存储在数据库中的数据进行检索、分析和...在实践中,不仅需要掌握基本的SQL语法,还要学会根据具体场景灵活运用JOIN、WHERE、GROUP BY等子句,以满足不同的查询需求。

    常用sql 语句讲解

    本教程主要针对SQL的基础语法进行讲解,包括SELECT、UPDATE、ORDER BY和GROUP BY等核心概念,并通过实例和错误案例分析,帮助你深入理解和掌握SQL语句。 一、SELECT语句 SELECT语句是SQL中最基本也是最常用的,...

    SQL数据库基础讲解.rar

    如`SELECT * FROM table_name ORDER BY column_name ASC/DESC;` 5. GROUP BY和聚合函数:用于对数据进行分组并应用聚合函数,如COUNT、SUM、AVG、MAX和MIN。例如`SELECT column1, COUNT(*) FROM table_name GROUP ...

    sql函数集合(具体的讲解函数例子帮助理解)

    本篇将深入讲解SQL中的常见函数,并通过具体实例帮助理解它们的用法。 一、聚合函数 1. COUNT(): 计算表中指定列的行数。例如,`COUNT(*)` 返回表中的所有行数,`COUNT(column_name)` 返回指定列非空值的数量。 2. ...

    Oracle语法实例讲解chm

    GROUP BY name; ``` 9. **联接查询**:通过`JOIN`操作连接两个或更多表。例如,如果有一个`departments`表,可以查询部门及其员工: ``` SELECT d.department_name, e.name FROM departments d JOIN ...

    SQLACCP5.0案例讲解

    在SQLACCP5.0案例讲解中,我们深入探讨了SQL语言的核心概念和实际应用,特别是在SQL Server 2005这个版本上。SQL(Structured Query Language)是用于管理和处理关系数据库的强大工具,广泛应用于各类数据管理场景。...

    sql语句大全 分段详细讲解了很多语句的实例用法

    在“sql语句大全 分段详细讲解了很多语句的实例用法”这个资源中,我们可以期待深入理解SQL的核心概念和常见用法。 1. **SELECT语句**:这是SQL中最基本的查询语句,用于从数据库中检索数据。你可以根据需求选择...

    讲解python基础的代码

    print("Can't divide by zero!") ``` 9. **面向对象编程** Python支持类和对象的概念,可以创建自定义的数据结构和行为。 ```python class Person: def __init__(self, name, age): self.name = name self....

    配置后的spring讲解

    8. **自动装配**:Spring提供了autowire属性,如`autowire="byName"`或`autowire="byType"`,用于自动匹配并注入Bean的依赖。 9. **工厂方法**:如果希望使用自定义的工厂方法创建Bean,可以设置`factory-bean`和`...

    mysql基础语句大全及用法讲解.docx

    SELECT * FROM users ORDER BY name ASC; ``` 7. **聚合函数** - **语法**: `SELECT COUNT(column), SUM(column), AVG(column), MAX(column), MIN(column) FROM table_name;` - **示例**: 计算`users`表中的...

    高中英语定语从句全面详细讲解.pdf

    例如:"I visited a scientist whose name is known all over the country." 在这个例子中,"whose"引导定语从句,并修饰"scientist",表明“name”属于“scientist”。 关系副词如when、where和why分别代表时间、...

    SQL解读+讲解

    "SQL解读+讲解"的教程是为初学者设计的,旨在帮助他们掌握SQL的基本概念和核心语法,从而更好地理解和运用数据库技术。 SQL的核心功能包括: 1. **数据查询**:SQL的SELECT语句是最基本也是最常用的,用于从一个或...

    Oracle分区表详细讲解.ppt

    Oracle分区表详细讲解 Oracle分区表是 Oracle 数据库中的一种存储机制,用于将大型表拆分为多个小型表,提高查询性能和数据维护效率。分区表的出现是为了解决大型表带来的性能瓶颈问题。 分区表的优点包括: * ...

Global site tag (gtag.js) - Google Analytics