Open sootudio opened 2 months ago
바쁜대로... GPT에게 그대로 물어본 답변 올립니닷...!
내장형 DB(Embedded Database)는 애플리케이션 내에 포함되어 함께 실행되는 데이터베이스입니다. 일반적인 데이터베이스와는 달리 별도의 데이터베이스 서버를 독립적으로 실행할 필요가 없고, 애플리케이션의 라이브러리로 포함되어 동작합니다.
개발 및 테스트:
경량 애플리케이션:
내장형 DB는 현재도 많이 사용되고 있으며, 특히 스프링 부트와 같은 프레임워크에서 쉽게 설정하고 사용할 수 있습니다. 스프링 부트에서는 개발과 테스트를 위해 기본적으로 H2 데이터베이스를 내장형으로 포함하고 있습니다.
application.properties
파일에서 spring.datasource.url
등을 설정해주면 자동으로 내장형 DB를 사용하게 됩니다.스프링 부트 애플리케이션에서 내장형 DB를 사용하는 예제를 살펴보겠습니다.
의존성 추가:
pom.xml
또는 build.gradle
에 H2 데이터베이스 의존성을 추가합니다.
<!-- pom.xml -->
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
설정 파일 수정:
application.properties
또는 application.yml
파일에서 내장형 DB 설정을 추가합니다.
# application.properties
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=password
spring.h2.console.enabled=true
위 설정은 H2 데이터베이스를 메모리 모드로 사용하고, H2 콘솔을 활성화하여 브라우저에서 데이터베이스를 확인할 수 있게 합니다.
H2 콘솔 접근:
http://localhost:8080/h2-console
로 접근하면 H2 데이터베이스 콘솔을 사용할 수 있습니다.
629페이지에서는,
ConcurrentHashMap
대신 내장형 DB를 사용해서 SQL을 저장하고 수정한다고 합니다. 여기서 내장형 DB라는 개념을 처음 들어봤는데, 몇 가지 궁금한 점이 생겨 여기 여쭤봅니다.