반응형
SpringBoot프로젝트 run을 하기 위해서는 main 메서드가 존재하는데 해당 메서드에서는
@SpringBootApplication 이라는 어노테이션이 달려있다.
여기 어노테이션에 이렇게 설정을 해주면 해당 프로젝트에서 데이터베이스를 사용 안한다는 의미이니 참고 바란다.
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) public class Application { public static void main(String args[]) { SpringApplication.run(Application.class, args); } } |
정확히 말하면 데이터 소스를 구성하지 않을때 사용하는 설정이다.
참고로 위와같이 설정을 하면 JPA 등을 사용시 Repository 에서 데이터베이스 설정을 확인해야하는데 데이터소스를 찾을수 없어 빈 오류가 날수 있다.
해결 방법은 아래와 같다.
- 데이터 소스를 직접 정의: DataSourceAutoConfiguration을 제외했기 때문에 데이터 소스를 수동으로 정의해야 한다.
예를 들어, application.properties 또는 application.yml 파일에 데이터 소스 관련 설정을 추가하거나, 직접 DataSource 빈을 설정하는 클래스를 정의해야 한다. - Spring Data JPA 설정 확인: 만약 JPA를 사용하고 있다면, JPA 설정을 올바르게 구성했는지 확인해야 한다.
exclude = {DataSourceAutoConfiguration.class}를 사용하여 자동 구성을 제외하면, JPA가 올바르게 작동하지 않을 수 있다. - @Primary를 이용한 다중 데이터 소스 설정: 다중 데이터 소스를 사용하는 경우, @Primary 어노테이션을 이용하여 기본 데이터 소스를 지정할 수도 있다.
반응형
'IT > Java' 카테고리의 다른 글
JPA 에서 containing(Contains, IsContaining) (20) | 2024.08.12 |
---|---|
RequestParam 에서 @Valid 사용 (14) | 2024.08.11 |
Hash 충돌의 해결 (21) | 2024.08.06 |
try-with-resources (AutoCloseable) (20) | 2024.08.05 |
[ArrayList] 조건 삭제를 위한 removeIf (15) | 2024.08.02 |
댓글