根据属性名自动装配。此选项将检查容器并根据名字查找与属性完全一致的bean,并将其与属性自动装配。例如,在bean定义中将autowire设置为by name,而该bean包含student属性(同时提供setStudent(..)方法),Spring就会查找名为student的bean定义,并用它来装配给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" 是一个专门针对Peugeot Citroen汽车品牌诊断工具DiagBox的修复程序。该程序由知名汽车电子专家Namek开发,旨在解决DiagBox与TLCD(Touch Screen LCD,触摸屏液晶显示器)之间的...
Spring容器通过setter方法、构造函数或自动装配(byName, byType, autowire)来注入Bean的依赖。这样,我们不需要在代码中手动创建和管理对象,而是由Spring容器自动完成。 4. **Bean的作用域**:Spring提供了多种...
$query = "SELECT first_name, last_name FROM users WHERE user_id='$id';"; // 执行查询 $result = mysql_query($query) or die('<pre>' . mysql_error() . '</pre>'); // 处理结果 $num = mysql_num_...
5. **限制返回的行数**:`TOP n`或`TOP n PERCENT`限制返回的数据行数,如`SELECT TOP 2 * FROM table_name`返回前两行,`SELECT TOP 20 PERCENT * FROM table_name`返回前20%的行。 **二、FROM子句** FROM子句指定...
在这个文档“sql语句妙用,各种sql语句的详细用法与讲解.doc”中,我们预计将深入探讨以下SQL语句的主要类别及其用法: 1. **数据查询(SELECT语句)**: - **基本查询**:从单个或多个表中选取数据,例如`SELECT ...
1.概述 group by 就是依据by 后面...GROUP BY column_name 3.举例说明 我们有这样一个订单表: 我们希望统计每一个用户订单的总金额,我们可以借助 group by 来实现: select Customer,sum(OrderPrice) as total_
数据库查询是数据库系统中的核心操作,它涉及到对存储在数据库中的数据进行检索、分析和...在实践中,不仅需要掌握基本的SQL语法,还要学会根据具体场景灵活运用JOIN、WHERE、GROUP BY等子句,以满足不同的查询需求。
本教程主要针对SQL的基础语法进行讲解,包括SELECT、UPDATE、ORDER BY和GROUP BY等核心概念,并通过实例和错误案例分析,帮助你深入理解和掌握SQL语句。 一、SELECT语句 SELECT语句是SQL中最基本也是最常用的,...
如`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中的常见函数,并通过具体实例帮助理解它们的用法。 一、聚合函数 1. COUNT(): 计算表中指定列的行数。例如,`COUNT(*)` 返回表中的所有行数,`COUNT(column_name)` 返回指定列非空值的数量。 2. ...
GROUP BY name; ``` 9. **联接查询**:通过`JOIN`操作连接两个或更多表。例如,如果有一个`departments`表,可以查询部门及其员工: ``` SELECT d.department_name, e.name FROM departments d JOIN ...
在SQLACCP5.0案例讲解中,我们深入探讨了SQL语言的核心概念和实际应用,特别是在SQL Server 2005这个版本上。SQL(Structured Query Language)是用于管理和处理关系数据库的强大工具,广泛应用于各类数据管理场景。...
在“sql语句大全 分段详细讲解了很多语句的实例用法”这个资源中,我们可以期待深入理解SQL的核心概念和常见用法。 1. **SELECT语句**:这是SQL中最基本的查询语句,用于从数据库中检索数据。你可以根据需求选择...
print("Can't divide by zero!") ``` 9. **面向对象编程** Python支持类和对象的概念,可以创建自定义的数据结构和行为。 ```python class Person: def __init__(self, name, age): self.name = name self....
8. **自动装配**:Spring提供了autowire属性,如`autowire="byName"`或`autowire="byType"`,用于自动匹配并注入Bean的依赖。 9. **工厂方法**:如果希望使用自定义的工厂方法创建Bean,可以设置`factory-bean`和`...
SELECT * FROM users ORDER BY name ASC; ``` 7. **聚合函数** - **语法**: `SELECT COUNT(column), SUM(column), AVG(column), MAX(column), MIN(column) FROM table_name;` - **示例**: 计算`users`表中的...
例如:"I visited a scientist whose name is known all over the country." 在这个例子中,"whose"引导定语从句,并修饰"scientist",表明“name”属于“scientist”。 关系副词如when、where和why分别代表时间、...
"SQL解读+讲解"的教程是为初学者设计的,旨在帮助他们掌握SQL的基本概念和核心语法,从而更好地理解和运用数据库技术。 SQL的核心功能包括: 1. **数据查询**:SQL的SELECT语句是最基本也是最常用的,用于从一个或...
Oracle分区表详细讲解 Oracle分区表是 Oracle 数据库中的一种存储机制,用于将大型表拆分为多个小型表,提高查询性能和数据维护效率。分区表的出现是为了解决大型表带来的性能瓶颈问题。 分区表的优点包括: * ...