2012-02-29 2 views

답변

2

이를 달성하는 방법은 하나의 트랜잭션에서 전체 테스트를 실행하고 테스트가 끝날 때 트랜잭션 롤백을 사용하는 것입니다. 스프링 프레임 워크를 사용하는 경우 TransactionConfiguration 표기법을 살펴보십시오.

+0

사실 나는 persist를 사용하여 테스트하고 싶지만 Hibernate가 DB에 데이터를 커밋하지 않기를 바란다. 가능한가? – joaosavio

+0

예. 저장, saveOrUpdate 또는 필요한 모든 조작을 사용할 수 있습니다. 쿼리는 데이터베이스로 이동하지만 테스트 후에 모든 것이 롤백됩니다. 여기에 내가 당신을 위해 인터넷 검색을 한 링크입니다, 그것은 최대 절전 모드를 테스트하는 것입니다. 나는 그것이 최신인지는 모르지만 기본 아이디어는 http://peterbacklund.blogspot.com/2006/11/testing-hibernate-daos-with-spring.html에있다. –

0

플러시 모드를 FlushMode.NEVER으로 설정하면 컨테이너가 변경 내용을 데이터베이스에 암시 적으로 적용하지 않을 수 있습니다.

또한 읽기 전용으로 연결을 시도 할 수 있습니다 : session.connection().setReadOnly(true).

관련 문제