`
Hermosa_Young
  • 浏览: 254545 次
  • 来自: 上海
社区版块
存档分类
最新评论

Spring 依赖注入 简单实例Demo

阅读更多
package com.knight.service;

public interface Knight {
	public void doAction();
}

 

package com.knight.service.impl;

import com.knight.service.Knight;
import com.quest.service.Quest;

public class BraveKnight implements Knight {

	private Quest quest;
	public  BraveKnight(Quest quest) {
		this.quest = quest;
	}
	@Override
	public void doAction() {
		quest.qhelp();

	}

}

 

package com.quest.service;

public interface Quest {
	public void qhelp();
}

 

package com.quest.service.impl;

import com.quest.service.Quest;

public class BitDragon implements Quest {

	public BitDragon() {
	}

	public void qhelp() {
		System.out.println("bit dragon");
	}

}

 

package com.quest.service.impl;

import com.quest.service.Quest;

public class RescueBeauty implements Quest {

	public RescueBeauty() {
	}

	public void qhelp() {
		System.out.println("rescue beauty");
	}

}

 

<?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-3.0.xsd">

<bean id="knight" class="com.knight.service.impl.BraveKnight">
	<constructor-arg ref="quest"></constructor-arg>
</bean>

<bean id="quest" class="com.quest.service.impl.RescueBeauty"></bean>

</beans>

 

<?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-3.0.xsd">

<bean id="knight" class="com.knight.service.impl.BraveKnight">
	<constructor-arg ref="quest"></constructor-arg>
</bean>

<bean id="quest" class="com.quest.service.impl.BitDragon"></bean>

</beans>

 

package com.main;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.knight.service.Knight;

public class KnightMain {

	public static void main(String[] args) {
		ApplicationContext context = new ClassPathXmlApplicationContext("rescueBeautyKnights.xml");
		Knight knight = (Knight) context.getBean("knight");
		knight.doAction();
		
		ApplicationContext context1 = new ClassPathXmlApplicationContext("bitDragonKnights.xml");
		Knight knight1 = (Knight) context1.getBean("knight");
		knight1.doAction();
	}
}

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>SpringFirst</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    </welcome-file-list>

<context-param>
  <param-name>contextConfigLocation</param-name>
   <param-value>
   rescueBeautyKnights.xml,
   bitDragonKnights.xml
   
   </param-value>
  
</context-param>
   
<listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </listener>
    
</web-app>

 

 

 

  • 大小: 137.6 KB
  • 大小: 358.5 KB
0
0
分享到:
评论

相关推荐

    Spring依赖注入使用实例工厂设注入demo

    本示例将深入讲解如何在Spring中通过实例工厂方法实现依赖注入,并通过一个完整的可运行的`SpringIOCTest4`项目来展示这一过程。 首先,理解依赖注入的基本概念。依赖注入允许我们把一个对象(依赖)传递到另一个...

    Spring依赖注入使用setter设注入demo

    这个简单的例子展示了Spring依赖注入的核心概念,即通过setter方法将依赖注入到目标对象中。在实际开发中,开发者可以根据需求选择使用setter注入、构造函数注入或者字段注入。setter注入的灵活性在于可以在不改变...

    Spring依赖注入使用构造设注入demo

    本篇将详细讲解如何使用构造器注入作为Spring依赖注入的一种方式,并通过一个完整的可运行示例——"SpringIOCTest2"来加深理解。 首先,理解依赖注入的概念。依赖注入允许我们不在类内部创建对象,而是通过外部源...

    spring依赖注入例子

    Spring框架的依赖注入(Dependency Injection,简称DI)是其核心特性之一,它使得对象之间的关系在运行时由Spring容器管理,而不是硬编码在类内部。这样可以提高代码的可测试性和可维护性,因为对象的依赖关系变得松...

    Spring依赖注入使用静态工厂设注入demo

    在Spring框架中,依赖注入(Dependency Injection,DI)是一种核心设计模式,它使得对象之间的依赖关系得以解耦,提高了代码的可测试性和可维护性。本篇将详细讲解如何使用静态工厂方法进行依赖注入,结合提供的...

    Spring3最简单的demo

    2. **Bean的实例化与依赖注入**:在Spring中,Bean是由Spring容器负责实例化的。当我们在代码中通过`ApplicationContext`获取`helloWorld` Bean时,Spring会自动创建并初始化Bean,同时执行依赖注入。例如: ```...

    Springioc注入Demo

    4. **注解注入**:自Spring 2.5版本开始引入,使用`@Autowired`、`@Qualifier`等注解可以更加简洁地进行依赖注入。`@Autowired`自动匹配类型,而`@Qualifier`用于指定特定的bean名称。 5. **属性注入**:除了基本...

    spring完整demo实例

    总结来说,这个"spring完整demo实例"涵盖了Spring框架的多个关键方面,包括依赖注入、面向切面编程、数据访问、Web开发和测试。通过学习和实践这个示例,你可以更好地理解和掌握Spring在实际项目中的应用。记得根据...

    反射与依赖注入DEMO

    总结起来,"反射与依赖注入DEMO"可能演示了如何在Java程序中利用反射动态操作类和对象,以及如何借助依赖注入框架(如Spring)来管理组件间的依赖关系,实现低耦合和高可扩展性。同时,接口的使用增强了代码的灵活性...

    spring3实例Demo

    Spring是Java领域中最受欢迎的轻量级框架之一,它通过依赖注入(DI)和面向切面编程(AOP)来简化企业级应用的开发。在这个实例Demo中,我们将深入探讨Spring3的核心特性,包括IoC容器、bean管理、数据访问、事务...

    springcloud的简单demo,适合初学,简单易懂

    在这个“springcloud的简单demo”中,我们将重点关注Eureka服务发现组件的集成,这是一个非常适合初学者上手的实例。 1. **Eureka**:Eureka是Netflix开发的服务注册与发现组件,它是SpringCloud生态中的关键部分。...

    spring boot简单demo

    3. **依赖注入 (Dependency Injection, DI)**:Spring Boot 支持依赖注入,这是一种设计模式,可以降低组件之间的耦合。通过 `@Autowired` 注解,我们可以自动将 Spring 容器中的依赖注入到需要它们的bean中。例如:...

    最简单的spring demo

    这就是一个最简单的Spring Demo,展示了如何使用Spring的依赖注入和配置管理。你可以根据需要扩展这个例子,比如引入AOP来实现日志记录,或者使用Spring Data访问数据库。Spring提供了丰富的API和模块,可以满足各种...

    Spring demo 自动检测注解

    在Spring框架中,自动检测注解(Autowired)是核心特性之一,它极大地简化了依赖注入的过程,使得开发者能够更加专注于业务逻辑,而不是繁琐的配置。本文将深入探讨Spring中的自动检测注解及其工作原理。 首先,`@...

    spring使用实例demo

    首先,Spring的核心特性包括依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)。依赖注入允许开发者在运行时动态地将依赖关系注入到对象中,降低了组件之间的耦合度,提高了...

    spring简单demo

    Spring框架是Java开发中广泛应用的一个轻量级框架,它的核心特性包括依赖注入(Dependency Injection,简称DI)和面向切面编程(Aspect-Oriented Programming,简称AOP)。在这个"spring简单demo"中,我们将深入探讨...

    Spring例子

    它提供了一个全面的编程和配置模型,旨在提高生产效率,同时鼓励面向接口的编程和依赖注入(DI)原则。Spring MVC是Spring框架的一个模块,专为构建Web应用程序而设计。在“SpringmvcDemo”这个例子中,我们将深入...

    spring+hibernate框架搭建demo

    3. **配置Spring**:在src/main/resources目录下创建applicationContext.xml文件,这是Spring的配置文件,用于定义bean和设置依赖注入。 4. **编写Java代码**:创建Spring的Bean,如Service层和DAO层,然后通过@...

    Struts2+spring依赖注入+Hibernate+Dwr

    这个“Struts2+spring依赖注入+Hibernate+Dwr”的例子,是一个综合性的Web应用程序示例,旨在展示这四个技术如何协同工作。 Struts2作为MVC(模型-视图-控制器)框架,主要负责处理HTTP请求,调度控制流程,并将...

    Spring 注解 方式配制的小demo

    总结来说,这个小demo旨在教授如何使用Spring的注解配置进行应用程序的构建,包括创建和管理bean,处理依赖注入,以及利用AOP进行切面编程。通过理解和实践这些注解,开发者可以更高效地开发和维护Spring应用,同时...

Global site tag (gtag.js) - Google Analytics