From 4de21d0b63e929d31965d0ae4cb311e7ce85f5ea Mon Sep 17 00:00:00 2001 From: pricelees Date: Sun, 10 Aug 2025 14:04:30 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20Region=20Schema=20/=20Entity=20?= =?UTF-8?q?=EC=A0=95=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../infrastructure/persistence/RegionEntity.kt | 18 ++++++++++++++++++ .../persistence/RegionRepository.kt | 5 +++++ src/main/resources/schema/schema-h2.sql | 11 +++++++++++ src/main/resources/schema/schema-mysql.sql | 11 +++++++++++ 4 files changed, 45 insertions(+) create mode 100644 src/main/kotlin/roomescape/region/infrastructure/persistence/RegionEntity.kt create mode 100644 src/main/kotlin/roomescape/region/infrastructure/persistence/RegionRepository.kt diff --git a/src/main/kotlin/roomescape/region/infrastructure/persistence/RegionEntity.kt b/src/main/kotlin/roomescape/region/infrastructure/persistence/RegionEntity.kt new file mode 100644 index 00000000..a0608f0e --- /dev/null +++ b/src/main/kotlin/roomescape/region/infrastructure/persistence/RegionEntity.kt @@ -0,0 +1,18 @@ +package roomescape.region.infrastructure.persistence + +import jakarta.persistence.Entity +import jakarta.persistence.Id +import jakarta.persistence.Table + +@Entity +@Table(name = "region") +class RegionEntity( + @Id + val code: String, + val sidoCode: String, + val sigunguCode: String, + val dongCode: String, + val sidoName: String, + val sigunguName: String, + val dongName: String, +) diff --git a/src/main/kotlin/roomescape/region/infrastructure/persistence/RegionRepository.kt b/src/main/kotlin/roomescape/region/infrastructure/persistence/RegionRepository.kt new file mode 100644 index 00000000..d8eb4988 --- /dev/null +++ b/src/main/kotlin/roomescape/region/infrastructure/persistence/RegionRepository.kt @@ -0,0 +1,5 @@ +package roomescape.region.infrastructure.persistence + +import org.springframework.data.jpa.repository.JpaRepository + +interface RegionRepository : JpaRepository \ No newline at end of file diff --git a/src/main/resources/schema/schema-h2.sql b/src/main/resources/schema/schema-h2.sql index ce3b4fdd..8a433004 100644 --- a/src/main/resources/schema/schema-h2.sql +++ b/src/main/resources/schema/schema-h2.sql @@ -1,3 +1,14 @@ +create table if not exists region ( + code varchar(10) primary key, + sido_code varchar(2) not null, + sigungu_code varchar(3) not null, + dong_code varchar(5) not null , + sido_name varchar(20) not null, + sigungu_name varchar(20) not null, + dong_name varchar(20) not null, +) +create index idx_region_sido_sigungu_dong ON region(sido_code, sigungu_code) + create table if not exists members ( member_id bigint primary key, email varchar(255) not null, diff --git a/src/main/resources/schema/schema-mysql.sql b/src/main/resources/schema/schema-mysql.sql index e10c4072..6023c153 100644 --- a/src/main/resources/schema/schema-mysql.sql +++ b/src/main/resources/schema/schema-mysql.sql @@ -1,3 +1,14 @@ +create table if not exists region ( + code varchar(10) primary key, + sido_code varchar(2) not null, + sigungu_code varchar(3) not null, + dong_code varchar(5) not null , + sido_name varchar(20) not null, + sigungu_name varchar(20) not null, + dong_name varchar(20) not null, +) +create index idx_region_sido_sigungu_dong ON region(sido_code, sigungu_code) + create table if not exists members ( member_id bigint primary key,