@Transactional

    [Spring]@Transactional과 JUnit Test

    [Spring]@Transactional과 JUnit Test

    JUnit으로 테스트 케이스를 만들어 실험을 하다가 h2 데이터베이스를 사용했을 때는 되던것이 로컬 MySQL서버와 연결하니 되지 않았다. 문제는 primary key가 reset이 되지 않고 @Transaciton에 대한 이해가 부족하여 많은 문제가 발생했기 때문이다. 이에 @Transactional에 대해 정리해보려고 한다. 다음 글은 두가지 질문에 답을 하고자 한다. 1. JUnit에서 @Before~과 @After의 트랜잭션 범위는? 2. JUnit에서 @Transaction에서는 롤백이 되는데 다른 곳에서는 @Transaction은 롤백이 되지 않을까? 트랜잭션 트랜잭션이란 데이터 베이스의 상태를 변화시키기 해서 수행하는 작업의 단위를 뜻한다. 작업의 단위는 단순히 SQL의 질의어 하나만이 아닌..