@SpringBootTest : 스프링 컨테이너와 테스트를 함께 실행 즉, 실제 스프링을 띄워서 실행한다.
@Transactional : 테스트 케이스에 이 어노테이션이 있으면 테스트 시작 전에 트랜잭션을 먼저 시작한다. DB에 데이터 넣은 후 테스트가 끝나면 롤백을 해서 DB 안의 데이터가 남지 않는다.(아예 처음부터 데이터베이스에 들어가지 않는다고 생각해도 된다.) -> 다음 테스트도 실행할 수 있게 된다. 즉, 다음 테스트에 영향을 주지 않는다.
❗ 주의할 점 : @Transactional은 테스트 케이스에서만 롤백을 한다!
Java Database Connectivity
JDBC와 마찬가지로 데이터를 저장하기 위해 도와주는 API
이 다음에는 JPA에 대해서 공부할 것이다.
JPA는 JDBC에서 썼던 반복 코드는 물론이고 JdbcTemplate에서 쓴 SQL도 전부 알아서 해준다!