使用Maven实现Struts2+Hibernate4+Spring3整合SSH框架(二):导入Spring的jar包并添加测试实现

日期: 2016-7-16


内容: 在完成了Maven开发环境的搭建之后,接着开始添加框架并实现测试。


一、 在pom.xml中添加Spring开发需要的jar包并添加单体测试包:

这里使用的版本是:

Spring4.1.3;

Juint4.10;

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.spring</groupId>
  <artifactId>Spring_Struts_HibernateWebProject</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  <description>使用Maven搭建SSH框架</description>
  <url>http://maven.apache.org</url> 
  <dependencies>  
       <!-- 添加Junit4为单元测试做准备 -->
       <dependency>
       		<groupId>junit</groupId>
       		<artifactId>junit</artifactId>
       		<version>4.10</version>
       		<scope>test</scope>
       </dependency>
       
       <!-- 添加Spring3的依赖jar包 -->
       <dependency>
       		<groupId>org.springframework</groupId>
			<artifactId>spring-core</artifactId>
			<version>4.1.3.RELEASE</version>
       </dependency>
       <dependency>
       		<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>4.1.3.RELEASE</version>
       </dependency>
       <dependency>
       		<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>4.1.3.RELEASE</version>
       </dependency>
       <dependency>
       		<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
			<version>4.1.3.RELEASE</version>
       </dependency>
       <dependency>
       		<groupId>org.springframework</groupId>
			<artifactId>spring-orm</artifactId>
			<version>3.2.4.RELEASE</version>
       </dependency>
       <dependency>
       		<groupId>org.springframework</groupId>
			<artifactId>spring-beans</artifactId>
			<version>4.1.3.RELEASE</version>
       </dependency>
       <dependency>
       		<groupId>org.springframework</groupId>
			<artifactId>spring-aop</artifactId>
			<version>4.1.3.RELEASE</version>
       </dependency>
  </dependencies>  
</project>

在添加的jar包的过程中遇到不少问题,可以参照我的其他博文。


二、测试开发环境是否搭建成功:

在src目录下添加applicationContext.xml Spring配置文件:

<?xml version="1.0" encoding="UTF-8"?>    
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"    
    xmlns:tx="http://www.springframework.org/schema/tx" xmlns:p="http://www.springframework.org/schema/p" xmlns:util="http://www.springframework.org/schema/util" xmlns:jdbc="http://www.springframework.org/schema/jdbc"    
    xmlns:cache="http://www.springframework.org/schema/cache"    
    xsi:schemaLocation="    
    http://www.springframework.org/schema/context    
    http://www.springframework.org/schema/context/spring-context.xsd    
    http://www.springframework.org/schema/beans    
    http://www.springframework.org/schema/beans/spring-beans.xsd    
    http://www.springframework.org/schema/tx    
    http://www.springframework.org/schema/tx/spring-tx.xsd    
    http://www.springframework.org/schema/jdbc    
    http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd    
    http://www.springframework.org/schema/cache    
    http://www.springframework.org/schema/cache/spring-cache-3.1.xsd    
    http://www.springframework.org/schema/aop    
    http://www.springframework.org/schema/aop/spring-aop.xsd    
    http://www.springframework.org/schema/util    
    http://www.springframework.org/schema/util/spring-util.xsd">
        
    </beans>   

编写接口和实现类:

package com.test.dao;

public interface InjectionDAO {

	public void save(String arg);
}

package com.test.dao;

public class InjectionDAOImpl implements InjectionDAO {

	@Override
	public void save(String arg) {
		
		System.out.println("保存的数据: "+arg);
	}

}


package com.test.service;

public interface InjectionService {

	public void save(String arg);
}


package com.test.service;

import com.test.dao.InjectionDAO;

public class InjectionServiceImpl implements InjectionService {

	InjectionDAO injectionDAO;
	
	//实现设值注入
	public void setInjectionDAO(InjectionDAO injectionDAO) {
		this.injectionDAO = injectionDAO;
	}

	@Override
	public void save(String arg) {

		System.out.println("接收的数据: "+arg);
		//处理数据
		arg = arg+":"+this.hashCode();
		
		//调用InjectionDAO的save方法处理数据
		injectionDAO.save(arg);//--->配置xml配置文件
	}

}


Spring配置文件:

<?xml version="1.0" encoding="UTF-8"?>    
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"    
    xmlns:tx="http://www.springframework.org/schema/tx" xmlns:p="http://www.springframework.org/schema/p" xmlns:util="http://www.springframework.org/schema/util" xmlns:jdbc="http://www.springframework.org/schema/jdbc"    
    xmlns:cache="http://www.springframework.org/schema/cache"    
    xsi:schemaLocation="    
    http://www.springframework.org/schema/context    
    http://www.springframework.org/schema/context/spring-context.xsd    
    http://www.springframework.org/schema/beans    
    http://www.springframework.org/schema/beans/spring-beans.xsd    
    http://www.springframework.org/schema/tx    
    http://www.springframework.org/schema/tx/spring-tx.xsd    
    http://www.springframework.org/schema/jdbc    
    http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd    
    http://www.springframework.org/schema/cache    
    http://www.springframework.org/schema/cache/spring-cache-3.1.xsd    
    http://www.springframework.org/schema/aop    
    http://www.springframework.org/schema/aop/spring-aop.xsd    
    http://www.springframework.org/schema/util    
    http://www.springframework.org/schema/util/spring-util.xsd">
        
        <bean id="injectionService" class="com.test.service.InjectionServiceImpl">
        	<property name="injectionDAO" ref="injectionDAO"></property>
        </bean>
        
        <bean id="injectionDAO" class="com.test.dao.InjectionDAOImpl"></bean>
    </beans>   


测试类:

package com.test.test;


import java.text.SimpleDateFormat;
import java.util.Date;


import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;


import com.test.service.InjectionService;


public class TestSpringCase {


<span style="white-space:pre">	</span>//获取当前时间
<span style="white-space:pre">	</span>Date date = new Date();
<span style="white-space:pre">	</span>
<span style="white-space:pre">	</span>//格式化格式
<span style="white-space:pre">	</span>String ftype="yyyy年MM月dd日 hh时:mm分:ss秒";
<span style="white-space:pre">	</span>
<span style="white-space:pre">	</span>//时间格式化对象
<span style="white-space:pre">	</span>SimpleDateFormat sdf = new SimpleDateFormat(ftype);
<span style="white-space:pre">	</span>
<span style="white-space:pre">	</span>//before设置
<span style="white-space:pre">	</span>@Before
<span style="white-space:pre">	</span>public void beforeMethod()
<span style="white-space:pre">	</span>{
<span style="white-space:pre">		</span>System.out.println("开始执行: "+sdf.format(date));
<span style="white-space:pre">	</span>}
<span style="white-space:pre">	</span>
<span style="white-space:pre">	</span>//after设置
<span style="white-space:pre">	</span>@After
<span style="white-space:pre">	</span>public void afterMethod()
<span style="white-space:pre">	</span>{
<span style="white-space:pre">		</span>System.out.println("执行完成: "+sdf.format(date));
<span style="white-space:pre">	</span>}
<span style="white-space:pre">	</span>
<span style="white-space:pre">	</span>//测试Spring环境
<span style="white-space:pre">	</span>@Test
<span style="white-space:pre">	</span>public void testSpring()
<span style="white-space:pre">	</span>{
<span style="white-space:pre">		</span>//加载配置文件
<span style="white-space:pre">		</span>ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
<span style="white-space:pre">		</span>//获得实例
<span style="white-space:pre">		</span>InjectionService is = (InjectionService)ac.getBean("injectionService");
<span style="white-space:pre">		</span>
<span style="white-space:pre">		</span>//调用保存方法保存数据
<span style="white-space:pre">		</span>is.save("我是需要保存的data");
<span style="white-space:pre">	</span>}
}

运行结果:
开始执行: 2016年07月16日 10时:03分:44秒
七月 16, 2016 10:03:45 上午 org.springframework.context.support.ClassPathXmlApplicationContext prepareRefresh
信息: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@7960847b: startup date [Sat Jul 16 10:03:45 CST 2016]; root of context hierarchy
七月 16, 2016 10:03:45 上午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from class path resource [applicationContext.xml]
接收的数据: 我是需要保存的data
保存的数据: 我是需要保存的data:394714818
执行完成: 2016年07月16日 10时:03分:44秒


Spring配置完毕!







你可能感兴趣的:(spring,maven,框架)