JDBC/OCP

park·2023년 3월 24일
0

자바는 기본적으로 DB와 붙기 위해서는 JDBC가 꼭 있어야 한다.

스프링 객체 지향이 좋은 이유: 다형성 활용(인터페이스를 두고 구현체를 바꿔서 사용 가능하다.)

개방-폐쇄 원칙(OCP, Open-Closed Priciple)

  • 확장에는 열려있고, 수정에는 닫혀있다.

스프링의 DI를 사용하면 기존 코드를 손대지 않고, 설정만으로 구현 클래스를 변경 할 수 있다.

database는 기본적으로 transaction이라는 개념이 있다. 보통 insert문은 auto commit을 통해서 들어가게 된다. commit 하기 전까지는 db에 보통 반영이 안된다.

@SpringBootTest : 스프링 컨테이너와 테스트를 함께 실행한다.
@Transactional : 테스트 케이스에 이 애노테이션이 있으면, 테스트 시작 전에 트랜잭션을 시작하고, 테스트 완료 후에 항상 롤백한다. 이렇게 하면 DB에 데이터가 남지 않으므로 다음 테스트에 영향을 주지 않는다.

순수하게 자바 코드로 짜는 것, 단위 테스트

스프링 컨테이너와 db까지 연동하는 걸 통합 테스트

가급적이면 순수 단위 테스트로 하는게 베스트다!!!!!!
스프링 컨테이너 없이 테스트 할 수 있도록 해야 한다.

0개의 댓글