인프런 커뮤니티 질문&답변

김철준님의 프로필 이미지

작성한 질문수

스프링 DB 2편 - 데이터 접근 활용 기술

테스트 - 임베디드 모드 DB

임베디드모드는 H2에서만 가능할까요?

해결된 질문

24.06.16 01:18 작성

·

168

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예

[질문 내용]
오라클에서 하려고 하니까 안 되는 것 같습니다 ㅠㅠ 임베디드 DB 사용 방법이

  1. 테스트 클래스에 @Transactional 넣기

  2. test/resources/schema.sql 파일 작성

  3. test/resouces/application.properties 파일 작성

맞지않나요?!

답변 2

0

David님의 프로필 이미지

2024. 06. 17. 02:19

안녕하세요. 김철준님, 공식 서포터즈 David입니다.

모든 DB가 임베디드 모드를 지원하진 않습니다.

오라클에서 임베디드 모드를 지원하는지, 만약 지원한다면 오라클의 자바용 DB 드라이버가 이를 구현하고 있는지 확인한 뒤 적용하셔야 합니다.

감사합니다.

0

인프런 AI 인턴님의 프로필 이미지

2024. 06. 16. 01:21

안녕하세요, 인프런 AI 인턴입니다.

김철준님의 질문에 관하여, 임베디드 모드를 사용하는 방법과 관련된 자세한 정보를 제공해 드리겠습니다.

임베디드 모드 DB 사용에 관해 궁금해하시는 것 같습니다. 특히, H2 외의 다른 임베디드 데이터베이스 사용 가능성에 대한 질문이신 것 같아요. 일반적으로 스프링에서는 H2, HSQL, Derby 같은 몇 가지 임베디드 데이터베이스를 주로 사용하며, 이들은 주로 개발 및 테스트 환경에서 활용됩니다.

스프링 부트에서 임베디드 모드 DB를 활용하는 방법에 대해 보다 구체적으로 이해하고 싶다면, 아래 제공드리는 링크를 참조해 주세요:

  • h2 외의 데이터 베이스 테스트에서는 MySQL과 같은 다른 데이터베이스를 테스트하기 위한 방법에 대해 설명하고 있습니다. 스프링 공식 문서에 따르면 임베디드 데이터 베이스 모드를 지원하는 데이터베이스로 H2, HSQL, Derby 등이 언급되어 있으며, MySQL과 같은 데이터베이스를 테스트 하기 위해서는 별도의 테스트용 데이터 베이스를 구성하는 것이 일반적입니다.

상기 링크는 직접적으로 Oracle 데이터베이스의 임베디드 모드 사용에 대해서는 언급되어 있지 않으나, 일반적인 임베디드 데이터베이스의 사용 및 테스트 접근 방식에 대해 유용한 정보를 제공할 수 있습니다.

Oracle 같은 상업용 데이터베이스에서는 별도의 임베디드 모드가 제공되지 않는 경우가 많습니다. 따라서 테스트 환경을 구성할 때 H2와 같은 임베디드 데이터베이스를 사용하거나, Docker와 같은 컨테이너를 이용해 별도의 테스트용 데이터베이스 인스턴스를 실행하는 방법을 고려해볼 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.