spring hibernate 事务整合 使用测试类 事务不自动提交的问题!!!

Posted 搬砖工的奋斗史

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring hibernate 事务整合 使用测试类 事务不自动提交的问题!!!相关的知识,希望对你有一定的参考价值。

 

使用JUnit 测试hibernate 事务管理的时候应注意 ,测试类完成是默认回滚的。 所以只能查询数据库却不能增删改数据库。 应该在测试类上面加上注解 @Rollback(false)  表似默认不回滚。

 

package TestHibernate;

import java.util.List;

import javax.annotation.Resource;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.annotation.Rollback;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.transaction.annotation.Transactional;

import dao.RoomDao;
import entity.Room;


@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:spring.xml")
@Transactional
@Rollback(false)
public class TestTranscation {

	@Resource
	private RoomDao r;
	
	
	@Test
	
	public void saa(){
		System.out.println("dsada");
		List<Room> a = r.findAll();
		for (Room room : a) {
			
			System.out.println(room.getRoomName());
			room.setRoomName("xxx");
			r.saveOrUpdate(room);
		}
		
//		Room room=new Room();
//		room.setId(6);	
//		room.setRoomName("fsffdsgfdhgf");
//		r.save(room);
//		
	}
	
	
	
}

  

以上是关于spring hibernate 事务整合 使用测试类 事务不自动提交的问题!!!的主要内容,如果未能解决你的问题,请参考以下文章

spring与hibernate整合事务管理的理解

hibernate4整合spring3事务问题

hibernate整合spring事务异常

spring整合hibernate的事务一直错误

Spring与Hibernate整合,实现Hibernate事务管理

hibernate与spring整合