본문 바로가기

springboot2

[SpringBoot] 스프링 부트 스타터와 라이브러리 관리 1. 라이브러리 관리의 어려움 1. 수 많은 라이브러리 중 어떤 라이브러리를 사용해야 할지 고민 2. 각 라이브러리의 버전 고민 → 호환성 문제 이러한 문제들을 해결하기 위해 스프링 부트를 사용한다. 2. 스프링 부트 기능 1. 외부 라이브러리 버전 관리 2. 스프링 부트 스타터 제공 3. 스프링 부트 라이브러리 버전 관리 개발자는 원하는 라이브러리만 고르고 라이브러리의 버전은 생략해도 된다. dependency-management 버전 관리 'io.spring.dependency-management' 플러그인 사용하여 'spring-boot-dependencies'에 있는 bom 정보를 참고한다. 4. 스프링 부트 스타터 'spring-boot-starter-web' 라이브러리 하나로 직접 넣어주었던 .. 2023. 11. 23.
[DataBase] 데이터 접근 기술 - 테스트 테스트 - 데이터베이스 분리 로컬에서 사용하는 애플리케이션 서버와 테스트에서 같은 데이터베이스를 사용하면 테스트에서 문제가 발생한다. 이를 해결하기 웨해 테스트를 다른 환경과 철저하게 분리해야 한다. 가장 간단한 방법으로는 테스트 전용 데이터베이스를 별도로 운영하는 것이다. 테스트에서 매우 중요한 원칙 1. 테스트는 다른 테스트와 격리해야 한다. 2. 테스트는 반복해서 실행할 수 있어야 한다. 테스트가 끝날 때마다 추가한 데이터에 DELETE SQL을 사용해도 되지만, 가장 좋은 방법은 트랜잭션, 롤백이다. 테스트 - 데이터 롤백 테스트가 끝나고 트랜잭션을 강제로 롤백해버리면 데이터가 제거된다. 테스트를 하면서 데이터를 이미 저장했는데, 중간에 테스트가 실패해 롤백을 호출하지 못해도 트랜잭션을 커밋하지 .. 2023. 9. 25.