`
wh007_cx
  • 浏览: 29333 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

【原创】基于spring 3.1.0 两种依赖注入的测试代码

 
阅读更多

编写 SetterInjection 的测试用例

 

TestSetterInjection 直接继承于 Spring 所提供的 AbstractJUnit4SpringContextTests 的抽象测试类。

 

TestSetterInjection.java代码:

 

import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
import org.wh.tech.spring.di.SetterInjection;

/**
 * @Author:WangHuan
 * 
 * @Date:2011-7-1
 * 
 * @TODO:测试Setter方式注入
 */

@ContextConfiguration(locations={"classpath:applicationContext-di.xml"})
public class TestSetterInjection extends AbstractJUnit4SpringContextTests {
	
	@Autowired  //
	private SetterInjection setterInjection;
	
	@Test
	public void getObject(){
		setterInjection.getObject();
	}

}

 

 

 

SetterInjection.java代码:

 

package org.wh.tech.spring.di;


/**
 * @Author:WangHuan
 * 
 * @Date:2011-7-1
 *
 * @TODO:用setter方式注入
 */

public class SetterInjection implements DiService {

	private String arg0;
	private String arg1;
	
	
	public void setArg0(String arg0) {
		this.arg0 = arg0;
	}


	public void setArg1(String arg1) {
		this.arg1 = arg1;
	}


	public String getArg0() {
		return arg0;
	}


	public String getArg1() {
		return arg1;
	}


	/* (non-Javadoc)
	 * @see org.wh.tech.spring.di.DiService#getObject()
	 */
	@Override
	public Class<?> getObject() {
		// TODO Auto-generated method stub
		System.out.println(this.getArg0() + " ; " + this.getArg1());
		return this.getClass();
	}

}
 

applicationContext-di.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"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:task="http://www.springframework.org/schema/task"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd 
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd 
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd" >
	
	<bean id="setterInjection" class="org.wh.tech.spring.di.SetterInjection" scope="prototype">
		<property name="arg0" value="0" />
		<property name="arg1" value="1" />
	</bean>
</beans>
 

 

编写 ConstructorInjection 的测试用例

 

主要差别的配置如下


	<bean id="constructorInjection" class="org.wh.tech.spring.di.ConstructorInjection" scope="prototype">
		<constructor-arg type="java.lang.String">
			<value>test</value>
		</constructor-arg>
		<constructor-arg type="int">
			<value>70</value>
		</constructor-arg>		
	</bean>
 
分享到:
评论

相关推荐

    spring3.1.0全部jar包

    - `spring-core.jar`: 这个核心模块提供了基础的IoC(Inversion of Control,控制反转)和DI(Dependency Injection,依赖注入)服务,以及资源处理和异常处理机制。它是Spring框架的基石,包括Bean工厂和...

    spring-framework-3.1.0.M2

    5. **声明式事务管理**:Spring的事务管理支持编程式和声明式两种方式,3.1.0.M2在声明式事务管理上做了优化,使得事务边界更清晰,降低了出错概率。 6. **消息支持**:Spring 3.1.0.M2增强了对消息传递系统(如JMS...

    spring-3.1.0中文版api帮助文档.pdf

    文档还介绍了如何获取和构建Spring 3.1.0,包括直接下载正式发布版和通过SVN库持续构建源码的方法,这为开发者提供了两种不同的入门途径,适应不同的开发习惯和需求。 接下来,文档深入讲解了Spring的核心概念——...

    spring3.1.0.M1 jar,SSH必须的包

    5. **事务管理**:Spring提供了声明式和编程式两种事务管理方式,可以根据应用需求灵活选择。 6. **MVC注解**:在Spring 3.1版本中,注解驱动的开发进一步加强,比如@Controller、@Service、@Repository和@...

    spring3.0,ssh

    其3.0版本引入了许多新特性,如对Java 5和6的全面支持,引入了Spring Expression Language (SpEL),提供了对JSR-303/JSR-349 Bean Validation的支持,以及改进的AOP(面向切面编程)和依赖注入。Spring 3.0还增强了...

    org.springframework.web-3.1.0.M2.ja

    Spring框架是一个开源的应用程序框架,它简化了Java企业级应用的开发,通过提供一种依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)的解决方案。在Web层,Spring Web模块...

    springMVC+hibernate所需jar包(基于spring4.1)

    `spring-context-4.1.0.RELEASE.jar`和`spring-beans-4.1.0.RELEASE.jar`则是Spring框架的基础,提供了依赖注入、上下文管理等核心功能。 Hibernate 是一个对象关系映射(ORM)框架,它简化了数据库操作,使得...

    spring集成redis需要的jar包.rar

    Spring Data Redis的核心类是`RedisTemplate`,它封装了Jedis的操作,并且支持通过Spring的依赖注入来配置和使用。此外,`StringRedisTemplate`是针对字符串操作优化的版本。 集成步骤通常包括以下几点: 1. 添加...

    Spring3.1AOP简单例子

    在"Spring3.1.0Demo2-AOP"这个示例中,我们可能还会看到如何将AOP与Spring的其他功能(如IoC容器和依赖注入)结合使用,以创建一个完整的应用。例如,切面可能被注入到其他bean中,或者使用Spring的事务管理功能来...

    mybatis-spring集成

    由于 MyBatis 3 的官方发布晚于 Spring 3.0 的开发周期结束时间,因此 Spring 开发团队决定不基于未发布的 MyBatis 版本进行整合支持。为了解决这一问题,MyBatis 社区发起了一项子项目,旨在将 Spring 与 MyBatis ...

    Spring编程技术与应用教学课件汇总完整版电子教案全书课件.ppt

    接下来,可以学习Spring的核心组件,如依赖注入(DI)、面向切面编程(AOP)、事务管理、数据访问/对象关系映射(DAO/ORM)等,以及Spring MVC、Spring Boot等子框架,进一步提升开发效率和应用质量。在实践中不断...

    中文版spring3.1+heibernate文档

    Spring 提供了一个全面的应用程序框架,涵盖了依赖注入、AOP(面向切面编程)、数据访问、Web应用以及更多功能。而Hibernate 则是Java领域中最流行的ORM(对象关系映射)工具,它简化了数据库操作,使得开发者可以...

    spring定时任务

    Spring与Quartz的结合使得我们可以利用Spring的依赖注入和事务管理等特性,同时享受Quartz的灵活性和可扩展性。通过Spring的`SchedulerFactoryBean`,可以轻松地在应用中启动和配置Quartz Scheduler,然后创建`...

    SpringMVC和Hibernate整合所需的jar包

    4. **org.springframework.context-3.1.0.RELEASE.jar**:Spring的上下文模块,提供了对应用程序环境和配置的全面管理,包括bean的生命周期管理和依赖注入。 5. **...

    spring jar包

    Spring是一个广泛使用的Java企业级应用程序开发框架,它提供了一种模块化和可扩展的方式来管理应用程序的复杂性,特别是通过依赖注入和面向切面编程(AOP)来实现。 在描述中提到了一个博客链接,虽然具体内容没有...

    springmvc.chm和mybatis3.chm

    通过Spring MVC,开发者可以灵活地选择视图技术,如JSP、FreeMarker或Thymeleaf,并利用Spring的强大功能,如依赖注入、AOP(面向切面编程)等。 MyBatis3是MyBatis的最新版本,它是一个优秀的持久层框架,专注于...

    https协议h5桌面通知与java通知.rar

    Spring是一个全面的Java应用开发框架,提供了依赖注入、AOP(面向切面编程)、MVC(模型-视图-控制器)等特性,简化了Java Web应用的开发。`spring-context-support-5.2.2.RELEASE.jar`则包含Spring对邮件、定时任务...

    websocket-api.jar最新

    `org.springframework.context-3.1.0.RELEASE.jar`是Spring框架的一个组成部分,专注于提供上下文和依赖注入(DI)功能。Spring框架是一个全面的Java企业级应用开发框架,它支持多种技术,包括WebSocket。Spring框架...

    小项目第五部分

    Spring框架是企业级应用的核心,提供了依赖注入(DI)和面向切面编程(AOP)等功能。它使得组件间的耦合度降低,提高了代码的可测试性和可维护性。Spring还包含了对其他框架的集成支持,如与Hibernate的整合,方便...

Global site tag (gtag.js) - Google Analytics