WEB开发网
开发学院软件开发Java 使用 Spring 2.5 TestContext 测试框架 阅读

使用 Spring 2.5 TestContext 测试框架

 2009-11-11 00:00:00 来源:WEB开发网   
核心提示: UserService 需要调用 DAO 层的 UserDao 和 LoginLogDao 以及 User 和 LoginLog 这两个 PO 完成业务逻辑,User 和 LoginLog分别对应 t_user 和 t_login_log 这两张数据库表,使用 Spring 2.5 TestCo

UserService 需要调用 DAO 层的 UserDao 和 LoginLogDao 以及 User 和 LoginLog 这两个 PO 完成业务逻辑,User 和 LoginLog分别对应 t_user 和 t_login_log 这两张数据库表。

在用户登录成功后调用 UserService 中的 handleUserLogin() 方法执行用户登录成功后的业务逻辑:

登录用户添加 5 个积分(t_user.credits);

登录用户的最后访问时间(t_user.last_visit)和 IP(t_user.last_ip)更新为当前值;

在日志表中(t_login_log)中为用户添加一条登录日志。

这是一个需要访问数据库并存在数据更改操作的业务方法,它工作在事务环境下。下面是装配该服务类 Bean 的 Spring 配置文件:


清单2. applicationContext.xml:Spring 配置文件,放在类路径下
<?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:tx="http://www.springframework.org/schema/tx" 
xmlns:aop="http://www.springframework.org/schema/aop" 
xmlns:context="http://www.springframework.org/schema/context" 
xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd 
   http://www.springframework.org/schema/tx 
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd 
   http://www.springframework.org/schema/aop 
http://www.springframework.org/schema/aop/spring-aop-2.5.xsd"> 
  <!-- 配置数据源 --> 
<bean id="dataSource" 
class="org.apache.commons.dbcp.BasicDataSource" 
destroy-method="close" 
    p:driverClassName="com.mysql.jdbc.Driver" 
    p:url="jdbc:mysql://localhost/sampledb" 
    p:username="root" 
    p:password="1234"/> 
   
  <!-- 配置Jdbc模板 --> 
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate" 
      p:dataSource-ref="dataSource"/> 
 
  <!-- 配置dao --> 
<bean id="loginLogDao"class="com.baobaotao.dao.LoginLogDao" 
      p:jdbcTemplate-ref="jdbcTemplate"/> 
<bean id="userDao" class="com.baobaotao.dao.UserDao" 
p:jdbcTemplate-ref="jdbcTemplate"/> 
 
<!-- 事务管理器 --> 
<bean id="transactionManager" 
   class="org.springframework.jdbc.datasource.DataSourceTransactionManager" 
      p:dataSource-ref="dataSource"/> 
 
<bean id="userService" class="com.baobaotao.service.UserService" 
       p:userDao-ref="userDao" p:loginLogDao-ref="loginLogDao"/> 
 
  <!-- 使用aop/tx命名空间配置事务管理,这里对service包下的服务类方法提供事务--> 
  <aop:config> 
<aop:pointcut id="jdbcServiceMethod" 
expression= "within(com.baobaotao.service..*)" /> 
<aop:advisor pointcut-ref="jdbcServiceMethod" advice-ref="jdbcTxAdvice" /> 
  </aop:config> 
  <tx:advice id="jdbcTxAdvice" transaction-manager="transactionManager"> 
<tx:attributes> 
      <tx:method name="*"/> 
    </tx:attributes> 
</tx:advice> 
</beans> 

上一页  1 2 3 4 5 6 7 8  下一页

Tags:使用 Spring TestContext

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接