Spring ioc 依赖注入注解篇
下面是配置文件,配置了spring的扫描路径,不配置这个注解不起作用。
package com.expect.oa.config;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@Configuration
@ComponentScan("com.expect.oa.*")
//@ComponentScan(basePackages={"com.expect.oa.DI.*","com.expect.oa.DI2.*"})
//多个包可以这样写,这相当于在XML里配置了自动扫描
public class SpringConfig {
}
这是一个接口:
package com.expect.oa.DI.interfaces;
public interface InterA {
void action1 ();
}
下面声明一个简单的类,继承了上面的借口:
package com.expect.oa.DI;
import org.springframework.stereotype.Component;
import com.expect.oa.DI.interfaces.InterA;
@Component("interAImpl")
//@Named("interAImpl")同样的效果
public class CompA implements InterA{
@Override
public void action1() {
// TODO Auto-generated method stub
System.out.println("spring DI");
}
}
下面是测试代码:
package com.expect.oa.test;
import javax.annotation.Resource;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.expect.oa.DI.interfaces.InterA;
import com.expect.oa.config.SpringConfig;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = {SpringConfig.class})
public class TestSpringDI {
//个人建议给每个组件都起名。
@Resource(name="interAImpl")
//@Autowired 同样的效果
InterA aService;
//这里是测试依赖注入
@Test
public void testDI() {
aService.action1();
}
}
成功咯,简单吧。
分享到:
相关推荐
标题 "Spring 简单案例(依赖注入)_02" 暗示我们将探讨的是Spring框架中的一个重要概念——依赖注入(Dependency Injection,简称DI)。在Spring框架中,依赖注入是一种设计模式,它允许我们解耦组件,使得代码更加...
在`Spring_01_入门篇_依赖注入(控制反转)_XML`中,我们可以看到一个或多个XML配置文件,它们定义了bean的定义,包括bean的类名、属性以及它们之间的依赖关系。例如: ```xml ``` 在这个例子中,`exampleBean`...
Spring依赖注入是Spring框架的核心特性之一,它使得对象之间的依赖关系得以解耦,增强了代码的可测试性和可维护性。依赖注入(Dependency Injection,简称DI)的理念是,一个对象不应该负责寻找并创建它所依赖的对象...
Spring的核心特性之一就是它的Inversion of Control(IoC,控制反转)容器,也被称为Dependency Injection(DI,依赖注入)。这个概念是Spring框架使应用程序组件之间解耦的关键。让我们深入探讨一下Spring的IoC和...
Spring的主要特性包括依赖注入(DI)、面向切面编程(AOP)、容器管理的bean以及对其他框架的集成,比如与Hibernate的整合。 **依赖注入(DI)** Spring的核心之一是依赖注入,它允许对象在运行时通过容器获得所需...
《Spring in Action》是一本非常经典的Spring框架实战书籍,它深入浅出地介绍了Spring的核心概念和技术,包括依赖注入、AOP(面向切面编程)、数据访问、Web开发等多个方面。这个压缩包文件“spring_in_action_...
在提供的压缩包文件中,可能包含了一些关于Spring依赖注入的实践案例,如`spring_lab11_2`、`spring_lab11_3`和`spring_lab11`。这些实验可能涵盖了如何在Spring环境中配置bean、实现依赖注入,以及如何处理数据库...
JavaEE spring 依赖注入DI入门案例
2. **依赖注入**:在转账案例中,Spring通过DI管理对象之间的依赖关系,使得代码更加灵活和可测试。开发者可以声明所依赖的组件,由Spring容器负责实例化、装配以及管理这些组件。 3. **Spring事务管理**:转账操作...
首先,我们要明白Spring框架的核心理念是依赖注入(Dependency Injection,简称DI)。通过DI,Spring可以管理应用程序中的对象,使得代码更加松耦合,易于测试和维护。注册在Spring中通常涉及到服务的注册、bean的...
1. day02_eesy_01anno_ioc:这部分可能涉及Spring的注解驱动的依赖注入(IoC)。注解如@Autowired、@Component、@Service、@Repository和@Controller等,使得代码更加简洁,同时避免XML配置。IoC(Inversion of ...
其核心特性包括依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)。依赖注入允许开发者在运行时通过外部配置来管理对象的依赖关系,降低了代码的耦合度。面向切面编程则允许...
总的来说,"Spring入门案例"旨在帮助初学者理解Spring的基本原理和使用方式,包括但不限于Bean的定义与管理、依赖注入的实现、以及Spring如何简化企业级应用的开发。通过深入学习和实践这个案例,你将能够更好地掌握...
Spring框架是Java开发中的核心组件,以其优秀的依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented Programming, AOP)特性,极大地简化了企业级应用的开发工作。在本篇文章中,我们将深入探讨...
"spring课堂案例"这个主题深入探讨了Spring框架的核心特性之一——依赖注入(Dependency Injection,简称DI)。依赖注入是一种设计模式,它有助于提升软件的灵活性、可测试性和可维护性。 依赖注入的主要目的是降低...
在本项目中,Spring作为基础架构层,负责管理对象的生命周期、依赖注入、AOP(面向切面编程)以及Web MVC(模型-视图-控制器)等核心功能。 2. **Dubbo服务治理框架**:Dubbo是阿里巴巴开源的高性能RPC(远程过程...
这本书涵盖了从基础到高级的多个Spring核心概念和技术,包括依赖注入、AOP(面向切面编程)、数据访问、Web开发以及Spring Boot等。 1. **依赖注入(Dependency Injection, DI)**:Spring的核心特性之一,它通过容器...
**Spring 框架概述** ...通过这个入门案例,你可以学习到如何创建Spring Bean、如何进行依赖注入、如何编写和运行单元测试,以及如何使用Spring MVC处理HTTP请求。这些基本技能是掌握Spring框架的关键。
2. **Chapter 03** - Spring框架:讲解Spring的核心特性,如依赖注入(DI)和面向切面编程(AOP)。通过示例展示如何配置Spring容器,以及如何使用Bean定义、自动装配和作用域。 3. **Chapter 05** - Spring MVC:...
Spring框架是Java开发中不可或缺的一部分,它以其强大的依赖注入(DI)和面向切面编程(AOP)功能而闻名。本案例将深入探讨Spring的核心特性,包括AOP、IOC、静态代理、动态代理以及与其他技术如Hibernate和Struts的...