applicationContext.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-2.5.xsd ">
<bean id="Oracle" class="com.zyl.dao.UserOraDAO" />
<bean id="Sql" class="com.zyl.dao.UserSqlDAO" />
<bean id="User" class="com.zyl.manager.UserMessageImpl">
<!-- <constructor-arg ref="Oracle"/>-->
<property name="userDao" ref="Oracle" />
</bean>
</beans>
----------------------------------------------
package com.zyl.Test;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.zyl.dao.UserSqlDAO;
import com.zyl.dao.UserOraDAO;
import com.zyl.manager.UserMessage;
import com.zyl.manager.UserMessageImpl;
public class TestMain {
public static void main(String[] args) {
/*UserMessage user = new UserMessageImpl(new UserSqlDAO());
user.save("zyl", "123");*/
BeanFactory factory= new ClassPathXmlApplicationContext("applicationContext.xml");
UserMessage user =(UserMessage)factory.getBean("User");
user.save("zyl","123");
}
}
----------------------------------
package com.zyl.manager;
public interface UserMessage {
public void save(String username, String password);
}
-----------------
package com.zyl.manager;
import com.zyl.dao.UserDAO;
import com.zyl.dao.UserSqlDAO;
public class UserMessageImpl implements UserMessage {
private UserDAO userDao;
/* public UserMessageImpl(UserDAO userDao) {
this.userDao=userDao;
}*/
public void save(String username, String password) {
this.userDao.show(username,password);
}
public void setUserDao(UserDAO userDao){
this.userDao=userDao;
}
}
---------------------------------------
package com.zyl.dao;
public interface UserDAO {
public void show(String username, String password);
}
----------------
package com.zyl.dao;
public class UserOraDAO implements UserDAO {
public void show(String username, String password) {
System.out.println("Oracle"+username+password);
}
}
----------------
package com.zyl.dao;
public class UserSqlDAO implements UserDAO {
public void show(String username, String password) {
System.out.println("Sql"+username+password);
}
}
------------------------------------
分享到:
相关推荐
Spring 依赖注入的几种方式 依赖注入(Dependency Injection,简称 DI)是一种设计模式,它可以将对象之间的耦合关系降到最低,从而提高系统的灵活性和可维护性。在 Spring 框架中,依赖注入是通过 IoC 容器来实现...
普通方法(set 方法)、构造方法、引用类型、简单类型(基本数据类型与 String)等。Spring 框架基于这些知识点,为我们提供了两种注入方式:setter 注入和构造器注入。 二、setter 注入 setter 注入是指通过 ...
Spring 框架中提供了多种依赖注入方式,其中最常用的三种依赖注入方式分别是接口注入、设值注入和构造函数注入。下面,我们将分别对这三种依赖注入方式进行详细的介绍和分析。 一、接口注入 接口注入是指通过接口...
如果需要给该bean提供一些初始化参数,则需要通过依赖注入方式,所谓的 依赖注入就是通过spring将bean所需要的一些参数传递到bean实例对象的过程(将依赖关系注入到对象中) ,spring的依赖注入有3种方式: ...
Spring依赖注入机制,也被称为控制反转(Inversion of Control,IOC),是Spring框架的核心特性,它使得应用程序的组件之间能够实现松散耦合。在传统编程中,对象通常自行创建和管理它们所依赖的其他对象,而在...
Spring 依赖注入知识点分享 在本篇文章中,我们将详细介绍 Spring 依赖注入的知识点,并提供相关的代码内容。 什么是 IoC IoC(Inversion of Control),即控制反转,是一种软件设计模式。它将对象之间的依赖关系...
Spring依赖注入的两种方式:Set方法注入和构造注入。Set方法注入是通过对象的setter方法来完成依赖关系的设置,而构造注入是通过对象的构造函数来完成依赖关系的设置。两种方式都可以用来实现依赖注入,但是Set方法...
Spring依赖注入(Dependency Injection, DI)是Spring框架的核心特性之一,它允许我们解耦组件间的依赖关系,使得代码更加灵活和可测试。本篇将详细解释Spring中的三种依赖注入方式:接口注入、Setter方法注入和构造...
@Resource 可以用在方法、属性、类上,通过 CommonAnnotationBeanPostProcessor 类实现依赖注入,与 @Autowired 一致。但可以指定 name 属性来指定 beanName,但如果 name 对应的 bean 不存在,则会抛出异常。 3. @...
在Spring中,依赖注入可以通过XML配置文件实现,本文将重点介绍两种常见的注入方式:Set注入和构造器注入。 1. Set注入 Set注入是最常见的注入方式,适用于对象没有默认构造函数或构造函数不接受参数的情况。首先,...
我们学习了spring框架spring框架里面有3个优势第一个是轻量级的IOC也叫控制反转后来改名为DI也叫依赖注入,依赖注入里面有3中注入方法分别是set注入,构造器注入,注解注入,我传的是set注入的视频
在本文中,我们将深入探讨如何通过Spring框架实现依赖注入,这是Spring的核心特性之一,对于理解和掌握Spring认证至关重要。依赖注入(Dependency Injection,简称DI)是一种设计模式,它允许我们解耦组件,提高代码...
构造注入是指通过构造方法注入bean的属性值或依赖的对象。在Spring框架中,我们可以使用 `<constructor-arg>`标签来注入构造参数,例如: ```xml <bean class="com.spring.test.Car" id="car"> ...
Spring 的依赖注入方式有 setter 注入、构造方法注入和接口注入。依赖注入的目标是在代码之外管理程序组建间的依赖关系。 1. Spring 注入方式有 setter 注入、构造方法注入和接口注入。其中,setter 注入和构造方法...
Spring 推荐对于那些必须依赖注入的属性,使用构造方法注入; 而那些不一定非要注入的属性,Spring 则推荐使用 setter 注入。 所以,既然 Spring 官网都那么说了,你要是连构造方法注入都不好好学习,那可就有点...
Spring 框架提供了多种方式来实现 DI,包括接口注入、上下文注入、Setter 方法注入和构造方法注入。 A. 接口注入:通过接口来注入依赖对象,例如,DeptDAO 接口和它的实现类 DeptDAOImpl。 B. 上下文注入:通过 ...
在本文中,我们将深入探讨Spring中的三种依赖注入方式:set注入、构造方法注入和接口注入。 1. **Set注入**: Set注入是最常见的注入方式,通过setter方法将依赖对象注入到被依赖对象中。在上述示例中,`...