实例
1、创建项目
2、创建dao层
public interface IUserDAO {
public String say(String msg);
}
@Override
public String say(String msg) {
System.out.println("--->"+msg);
return "hello";
}
3、创建service层
public interface IUserService {
public String say(String msg);
}
private IUserDAO dao;
@Override
public String say(String msg) {
return dao.say(msg);
}
/**
* 设值注入必要提供的setter方法
* @param dao
*/
public void setDao(IUserDAO dao) {
this.dao = dao;
}
4、创建control层
public class UserController {
private IUserService service;
public void setService(IUserService service) {
this.service = service;
}
public void say(String msg){
System.out.println("controller:"+service.say(msg));
}
}
5、配置文件
<?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.xsd">
<!-- 注册dao层实例 -->
<bean class="com.sxt.dao.impl.UserDAOImpl" id="userDAOImpl"></bean>
<!-- 注册service实例 -->
<bean class="com.sxt.service.UserServiceImpl" id="userServiceImpl">
<property name="dao" ref="userDAOImpl"></property>
</bean>
<!-- 注册controller实例 -->
<bean class="com.sxt.controller.UserController">
<property name="service" ref="userServiceImpl"></property>
</bean>
</beans>
6、测试
public class test {
public static void main(String[] args) {
ApplicationContext ac=
new ClassPathXmlApplicationContext("applicationContext.xml");
UserController controller = ac.getBean(UserController.class);
controller.say("aaa");
}
}
转载于:https://my.oschina.net/u/4116634/blog/3037799
分享到:
相关推荐
这个jar文件"Spring-ioc-jar"包含了实现Spring IOC功能所需的关键类和接口,是学习和使用Spring IOC技术的基础。 Spring框架的IOC容器是其核心组件,主要由`ApplicationContext`和`BeanFactory`两个接口代表。`...
Spring IoC通过XML配置文件实现了对象的实例化和依赖注入,有效地降低了对象间的耦合,提高了代码的可读性和可维护性。理解并熟练运用Spring的IoC机制是成为一名优秀的Java开发者的关键步骤之一。在实际项目中,结合...
下面,我们将深入探讨Spring-IOC的实现,包括注解的使用和注解解析。 1. **控制反转(IOC)概念** - 控制反转是设计模式中的一个概念,它改变了传统的对象获取方式。在没有IOC的情况下,对象通常自行创建依赖。而...
总结,Spring-IOC实例展示了如何利用Spring框架进行对象的创建和管理,以及如何通过依赖注入实现松耦合。理解并熟练运用Spring-IOC能极大地提升Java应用的灵活性和可维护性。在实际开发中,可以根据项目需求选择合适...
在这个名为“Spring---IOC实现”的项目中,我们将深入探讨Spring如何通过IoC实现对应用程序对象的生命周期和依赖关系的控制。 IoC是一种设计模式,它的核心理念在于将对象的创建和依赖关系的维护从应用程序代码中...
在这个名为"Spring-IOC丐版"的项目中,我们将深入探讨Spring框架的核心组件——IOC容器的基础实现。 IOC,即控制反转,是一种设计模式,它的主要思想是将对象的创建和管理权交给一个外部容器,而不是由对象自身负责...
在本文中,我们将深入探讨如何使用Spring的Inversion of Control(IoC)容器来实现一个具体的案例:控制打印机(Printer)类与不同类型的纸张(Paper)类的交互。Spring的IoC允许我们解耦组件,使代码更加灵活且易于...
依赖注入是Spring实现IoC的核心机制。它允许我们在不修改代码的情况下,动态地改变对象之间的依赖关系。在Spring中,我们可以通过XML配置、注解或者Java配置的方式来声明依赖。例如,我们可以在XML配置文件中定义...
Spring 的 IoC 容器是实现这一模式的关键组件。 ### 1. Spring IoC 容器 Spring IoC 容器是 Spring 框架的核心,负责创建、配置和管理对象。有两种主要类型的容器:BeanFactory 和 ApplicationContext。...
/*模拟spring的实现 * 1.通过构造器获取配置文件 * 2.通过dom4j解析配置文件,得到list集合(存放Bean标签的id和class属性) * 3.通过反射实例化得到对应的实例化对象,放置在map中(map是键值对,可根据id获取值)...
**二、Spring IOC容器** Spring的IOC容器是实现控制反转的关键组件。它负责管理应用中的对象,包括对象的创建、初始化、装配以及生命周期管理。Spring提供了两种主要的容器:BeanFactory和ApplicationContext。...
Spring 框架是 Java 开发中不可或缺的一部分,它以其强大的依赖注入(Dependency Injection, DI)和控制反转(Inversion of Control, IOC)特性而闻名。在这个名为“spring-demo02-IOC-DI案例”的压缩包中,我们将...
**Spring Ioc 实现原理详解** Spring Ioc(Inversion of Control,控制反转)是Spring框架的核心特性之一,它改变了传统应用程序中对象的创建和管理方式。在传统的软件设计中,对象的创建和依赖关系的维护通常由...
本文将围绕“coco-spring-ioc”项目,深入探讨这个简易版的Spring-ioc实现。 首先,理解IOC的概念是至关重要的。在传统的编程模式中,对象通常自行创建和管理它们所依赖的对象,而在IOC中,这种控制权被反转,由一...
Spring IoC容器通过XML配置或注解实现了对象的创建、管理和依赖注入,极大地简化了Java应用的复杂性。理解并熟练运用Spring IoC,能够帮助开发者构建更灵活、易于测试和维护的系统。在实际开发中,还可以结合@...
要深入理解并应用Spring的IoC容器,你需要具备Java面向对象编程的基础,了解XML配置和Spring框架的基本概念。此外,对Java集合框架、数据库操作以及设计模式有一定的理解也将非常有益。 **总结** Spring的IoC容器...
总的来说,Spring的IoC容器实现了控制反转,使得开发者可以专注于业务逻辑,而不是对象的创建和管理。它降低了系统的耦合度,提高了代码的可复用性和可测试性。依赖注入作为IoC的主要实现方式,让代码更加灵活,易于...
总之,Spring IoC容器作为核心组件,极大地提高了软件设计的灵活性和可维护性,通过解耦和管理对象的生命周期,让开发者可以专注于业务逻辑的实现,从而提升开发效率。在实际项目中,掌握Spring IoC容器的使用,对...
Beans模块则实现了bean的定义、实例化、装配和管理。 2. **Data Access/Integration**:这个模块支持数据访问,包括JDBC、ORM(Object-Relational Mapping)、OXM(Object-XML Mapping)和JMS(Java Message ...
Spring 提供了两种主要的 IOC 实现方式:基于 XML 的配置和基于注解的配置。在 XML 配置中,我们会在一个或多个 XML 文件中定义 Bean 及它们的依赖关系。例如: ```xml ``` 在上面的例子中,`exampleBean` 的...