diff --git a/.github/workflows/deploy-dev.yml b/.github/workflows/deploy-dev.yml index ad102903..34f01d1f 100644 --- a/.github/workflows/deploy-dev.yml +++ b/.github/workflows/deploy-dev.yml @@ -6,7 +6,7 @@ on: branches: - develop paths: - - "api/**" + - "server/**" jobs: deploy: @@ -27,7 +27,7 @@ jobs: module: ./cicd args: >- deploy - --source-dir=api + --source-dir=server --profile=dev --ssh-dest=env:SSH_DEST --ssh-key=env:SSH_KEY diff --git a/.github/workflows/deploy-prod.yml b/.github/workflows/deploy-prod.yml index 3d0cc009..a0c3547b 100644 --- a/.github/workflows/deploy-prod.yml +++ b/.github/workflows/deploy-prod.yml @@ -6,7 +6,7 @@ on: branches: - main paths: - - "api/**" + - "server/**" jobs: deploy: @@ -27,7 +27,7 @@ jobs: module: ./cicd args: >- deploy - --source-dir=api + --source-dir=server --profile=prod --ssh-dest=env:SSH_DEST --ssh-key=env:SSH_KEY diff --git a/.github/workflows/deploy-stag.yml b/.github/workflows/deploy-stag.yml index f2523b2b..3b7fbbca 100644 --- a/.github/workflows/deploy-stag.yml +++ b/.github/workflows/deploy-stag.yml @@ -6,7 +6,7 @@ on: branches: - release paths: - - "api/**" + - "server/**" jobs: deploy: @@ -27,7 +27,7 @@ jobs: module: ./cicd args: >- deploy - --source-dir=api + --source-dir=server --profile=stag --ssh-dest=env:SSH_DEST --ssh-key=env:SSH_KEY diff --git a/.gitmodules b/.gitmodules index fb042daf..04b28663 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "api/src/test/resources/migrate/sql"] path = api/src/test/resources/migrate/sql url = git@github.com:makevook/vook-sql.git +[submodule "server/api/src/test/resources/migrate/sql"] + path = server/api/src/test/resources/migrate/sql + url = git@github.com:makevook/vook-sql.git diff --git a/api/settings.gradle b/api/settings.gradle deleted file mode 100644 index 5cd7dd3b..00000000 --- a/api/settings.gradle +++ /dev/null @@ -1 +0,0 @@ -rootProject.name = 'api' diff --git a/cicd/Makefile b/cicd/Makefile index df466db4..5963b1b1 100644 --- a/cicd/Makefile +++ b/cicd/Makefile @@ -3,7 +3,7 @@ VERSION := $(shell git describe --tags --always --dirty) .PHONY:deploy-dev deploy-dev: dagger call -v deploy \ - --source-dir=../api \ + --source-dir=../server \ --profile=dev \ --ssh-dest=file:./secrets/dev/dest.txt \ --ssh-key=file:./secrets/dev/ssh.key \ @@ -14,7 +14,7 @@ deploy-dev: .PHONY:deploy-stag deploy-stag: dagger call -v deploy \ - --source-dir=../api \ + --source-dir=../server \ --profile=stag \ --ssh-dest=file:./secrets/stag/dest.txt \ --ssh-key=file:./secrets/stag/ssh.key \ @@ -25,7 +25,7 @@ deploy-stag: .PHONY:deploy-prod deploy-prod: dagger call -v deploy \ - --source-dir=../api \ + --source-dir=../server \ --profile=prod \ --ssh-dest=file:./secrets/prod/dest.txt \ --ssh-key=file:./secrets/prod/ssh.key \ @@ -35,7 +35,7 @@ deploy-prod: .PHONY:build-jar build-jar: - dagger call -v build-api-jar --dir=../api --test export --path out/api.jar + dagger call -v build-api-jar --dir=../server --test --sub-module=api export --path out/api.jar .PHONY:build-image build-image: build-jar diff --git a/cicd/dagger/main.go b/cicd/dagger/main.go index 37dbadcc..e1652111 100644 --- a/cicd/dagger/main.go +++ b/cicd/dagger/main.go @@ -16,6 +16,8 @@ func (v *VookServer) BuildApiJar( dir *dagger.Directory, // +optional test bool, + // +optional + subModule string, ) (*dagger.File, error) { c := dag.Java(). Init(). @@ -24,17 +26,31 @@ func (v *VookServer) BuildApiJar( Container() if test { + var testCommand []string + if subModule == "" { + testCommand = []string{"./gradlew", "test"} + } else { + testCommand = []string{"./gradlew", fmt.Sprintf(":%s:test", subModule)} + } + _, err := c. With(dag.DockerService().WithCacheVolume("docker-var/lib/docker").BindAsService). - WithExec([]string{"./gradlew", "test"}). + WithExec(testCommand). Sync(ctx) if err != nil { return nil, errors.New("test fail:" + err.Error()) } } + var bootJarCommand []string + if subModule == "" { + bootJarCommand = []string{"./gradlew", "bootJar"} + } else { + bootJarCommand = []string{"./gradlew", fmt.Sprintf(":%s:bootJar", subModule)} + } + jarFile := c. - WithExec([]string{"./gradlew", "bootJar"}). + WithExec(bootJarCommand). File("jar/api.jar") return jarFile, nil @@ -146,7 +162,7 @@ func (v *VookServer) Deploy( version string, command string, ) error { - jarFile, err := v.BuildApiJar(ctx, sourceDir, true) + jarFile, err := v.BuildApiJar(ctx, sourceDir, true, "api") if err != nil { return err } diff --git a/api/.gitignore b/server/.gitignore similarity index 100% rename from api/.gitignore rename to server/.gitignore diff --git a/api/build.gradle b/server/api/build.gradle similarity index 79% rename from api/build.gradle rename to server/api/build.gradle index a34969bf..29e4bc52 100644 --- a/api/build.gradle +++ b/server/api/build.gradle @@ -1,32 +1,7 @@ -plugins { - id 'java' - id 'org.springframework.boot' version '3.3.1' - id 'io.spring.dependency-management' version '1.1.5' -} - ext { springModulithVersion = "1.2.1" } -group = 'vook.server' -version = '0.0.1-SNAPSHOT' - -java { - toolchain { - languageVersion = JavaLanguageVersion.of(21) - } -} - -configurations { - compileOnly { - extendsFrom annotationProcessor - } -} - -repositories { - mavenCentral() -} - dependencies { // spring implementation 'org.springframework.boot:spring-boot-starter-data-jpa' @@ -72,17 +47,8 @@ dependencies { testImplementation 'org.testcontainers:mariadb' } -bootJar { - destinationDirectory = file(rootDir.absolutePath + '/jar') - archiveFileName = "${project.name}.jar" -} - dependencyManagement { imports { mavenBom "org.springframework.modulith:spring-modulith-bom:$springModulithVersion" } } - -tasks.named('test') { - useJUnitPlatform() -} diff --git a/api/http/demo.http b/server/api/http/demo.http similarity index 100% rename from api/http/demo.http rename to server/api/http/demo.http diff --git a/api/http/init.http b/server/api/http/init.http similarity index 100% rename from api/http/init.http rename to server/api/http/init.http diff --git a/api/src/main/java/vook/server/api/ApiApplication.java b/server/api/src/main/java/vook/server/api/ApiApplication.java similarity index 100% rename from api/src/main/java/vook/server/api/ApiApplication.java rename to server/api/src/main/java/vook/server/api/ApiApplication.java diff --git a/api/src/main/java/vook/server/api/config/JpaConfig.java b/server/api/src/main/java/vook/server/api/config/JpaConfig.java similarity index 100% rename from api/src/main/java/vook/server/api/config/JpaConfig.java rename to server/api/src/main/java/vook/server/api/config/JpaConfig.java diff --git a/api/src/main/java/vook/server/api/config/QuerydslConfig.java b/server/api/src/main/java/vook/server/api/config/QuerydslConfig.java similarity index 100% rename from api/src/main/java/vook/server/api/config/QuerydslConfig.java rename to server/api/src/main/java/vook/server/api/config/QuerydslConfig.java diff --git a/api/src/main/java/vook/server/api/config/RedisConfig.java b/server/api/src/main/java/vook/server/api/config/RedisConfig.java similarity index 100% rename from api/src/main/java/vook/server/api/config/RedisConfig.java rename to server/api/src/main/java/vook/server/api/config/RedisConfig.java diff --git a/api/src/main/java/vook/server/api/config/SecurityConfig.java b/server/api/src/main/java/vook/server/api/config/SecurityConfig.java similarity index 100% rename from api/src/main/java/vook/server/api/config/SecurityConfig.java rename to server/api/src/main/java/vook/server/api/config/SecurityConfig.java diff --git a/api/src/main/java/vook/server/api/config/SwaggerConfig.java b/server/api/src/main/java/vook/server/api/config/SwaggerConfig.java similarity index 100% rename from api/src/main/java/vook/server/api/config/SwaggerConfig.java rename to server/api/src/main/java/vook/server/api/config/SwaggerConfig.java diff --git a/api/src/main/java/vook/server/api/config/TimeZoneConfig.java b/server/api/src/main/java/vook/server/api/config/TimeZoneConfig.java similarity index 100% rename from api/src/main/java/vook/server/api/config/TimeZoneConfig.java rename to server/api/src/main/java/vook/server/api/config/TimeZoneConfig.java diff --git a/api/src/main/java/vook/server/api/config/package-info.java b/server/api/src/main/java/vook/server/api/config/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/config/package-info.java rename to server/api/src/main/java/vook/server/api/config/package-info.java diff --git a/api/src/main/java/vook/server/api/devhelper/app/InitService.java b/server/api/src/main/java/vook/server/api/devhelper/app/InitService.java similarity index 100% rename from api/src/main/java/vook/server/api/devhelper/app/InitService.java rename to server/api/src/main/java/vook/server/api/devhelper/app/InitService.java diff --git a/api/src/main/java/vook/server/api/devhelper/app/TestTermsLoader.java b/server/api/src/main/java/vook/server/api/devhelper/app/TestTermsLoader.java similarity index 100% rename from api/src/main/java/vook/server/api/devhelper/app/TestTermsLoader.java rename to server/api/src/main/java/vook/server/api/devhelper/app/TestTermsLoader.java diff --git a/api/src/main/java/vook/server/api/devhelper/helper/CsvReader.java b/server/api/src/main/java/vook/server/api/devhelper/helper/CsvReader.java similarity index 100% rename from api/src/main/java/vook/server/api/devhelper/helper/CsvReader.java rename to server/api/src/main/java/vook/server/api/devhelper/helper/CsvReader.java diff --git a/api/src/main/java/vook/server/api/devhelper/init/LocalInit.java b/server/api/src/main/java/vook/server/api/devhelper/init/LocalInit.java similarity index 100% rename from api/src/main/java/vook/server/api/devhelper/init/LocalInit.java rename to server/api/src/main/java/vook/server/api/devhelper/init/LocalInit.java diff --git a/api/src/main/java/vook/server/api/devhelper/web/routes/init/InitApi.java b/server/api/src/main/java/vook/server/api/devhelper/web/routes/init/InitApi.java similarity index 100% rename from api/src/main/java/vook/server/api/devhelper/web/routes/init/InitApi.java rename to server/api/src/main/java/vook/server/api/devhelper/web/routes/init/InitApi.java diff --git a/api/src/main/java/vook/server/api/devhelper/web/routes/init/InitController.java b/server/api/src/main/java/vook/server/api/devhelper/web/routes/init/InitController.java similarity index 100% rename from api/src/main/java/vook/server/api/devhelper/web/routes/init/InitController.java rename to server/api/src/main/java/vook/server/api/devhelper/web/routes/init/InitController.java diff --git a/api/src/main/java/vook/server/api/domain/common/exception/DomainException.java b/server/api/src/main/java/vook/server/api/domain/common/exception/DomainException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/common/exception/DomainException.java rename to server/api/src/main/java/vook/server/api/domain/common/exception/DomainException.java diff --git a/api/src/main/java/vook/server/api/domain/common/model/BaseEntity.java b/server/api/src/main/java/vook/server/api/domain/common/model/BaseEntity.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/common/model/BaseEntity.java rename to server/api/src/main/java/vook/server/api/domain/common/model/BaseEntity.java diff --git a/api/src/main/java/vook/server/api/domain/common/model/Synonym.java b/server/api/src/main/java/vook/server/api/domain/common/model/Synonym.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/common/model/Synonym.java rename to server/api/src/main/java/vook/server/api/domain/common/model/Synonym.java diff --git a/api/src/main/java/vook/server/api/domain/common/package-info.java b/server/api/src/main/java/vook/server/api/domain/common/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/common/package-info.java rename to server/api/src/main/java/vook/server/api/domain/common/package-info.java diff --git a/api/src/main/java/vook/server/api/domain/demo/logic/DemoLogic.java b/server/api/src/main/java/vook/server/api/domain/demo/logic/DemoLogic.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/demo/logic/DemoLogic.java rename to server/api/src/main/java/vook/server/api/domain/demo/logic/DemoLogic.java diff --git a/api/src/main/java/vook/server/api/domain/demo/logic/DemoTermSearchService.java b/server/api/src/main/java/vook/server/api/domain/demo/logic/DemoTermSearchService.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/demo/logic/DemoTermSearchService.java rename to server/api/src/main/java/vook/server/api/domain/demo/logic/DemoTermSearchService.java diff --git a/api/src/main/java/vook/server/api/domain/demo/logic/dto/DemoTermSearchCommand.java b/server/api/src/main/java/vook/server/api/domain/demo/logic/dto/DemoTermSearchCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/demo/logic/dto/DemoTermSearchCommand.java rename to server/api/src/main/java/vook/server/api/domain/demo/logic/dto/DemoTermSearchCommand.java diff --git a/api/src/main/java/vook/server/api/domain/demo/logic/dto/DemoTermSearchResult.java b/server/api/src/main/java/vook/server/api/domain/demo/logic/dto/DemoTermSearchResult.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/demo/logic/dto/DemoTermSearchResult.java rename to server/api/src/main/java/vook/server/api/domain/demo/logic/dto/DemoTermSearchResult.java diff --git a/api/src/main/java/vook/server/api/domain/demo/model/DemoTerm.java b/server/api/src/main/java/vook/server/api/domain/demo/model/DemoTerm.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/demo/model/DemoTerm.java rename to server/api/src/main/java/vook/server/api/domain/demo/model/DemoTerm.java diff --git a/api/src/main/java/vook/server/api/domain/demo/model/DemoTermRepository.java b/server/api/src/main/java/vook/server/api/domain/demo/model/DemoTermRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/demo/model/DemoTermRepository.java rename to server/api/src/main/java/vook/server/api/domain/demo/model/DemoTermRepository.java diff --git a/api/src/main/java/vook/server/api/domain/demo/model/DemoTermSynonym.java b/server/api/src/main/java/vook/server/api/domain/demo/model/DemoTermSynonym.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/demo/model/DemoTermSynonym.java rename to server/api/src/main/java/vook/server/api/domain/demo/model/DemoTermSynonym.java diff --git a/api/src/main/java/vook/server/api/domain/demo/model/DemoTermSynonymRepository.java b/server/api/src/main/java/vook/server/api/domain/demo/model/DemoTermSynonymRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/demo/model/DemoTermSynonymRepository.java rename to server/api/src/main/java/vook/server/api/domain/demo/model/DemoTermSynonymRepository.java diff --git a/api/src/main/java/vook/server/api/domain/demo/package-info.java b/server/api/src/main/java/vook/server/api/domain/demo/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/demo/package-info.java rename to server/api/src/main/java/vook/server/api/domain/demo/package-info.java diff --git a/api/src/main/java/vook/server/api/domain/template_vocabulary/logic/TemplateVocabularyLogic.java b/server/api/src/main/java/vook/server/api/domain/template_vocabulary/logic/TemplateVocabularyLogic.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/template_vocabulary/logic/TemplateVocabularyLogic.java rename to server/api/src/main/java/vook/server/api/domain/template_vocabulary/logic/TemplateVocabularyLogic.java diff --git a/api/src/main/java/vook/server/api/domain/template_vocabulary/logic/dto/TemplateVocabularyCreateCommand.java b/server/api/src/main/java/vook/server/api/domain/template_vocabulary/logic/dto/TemplateVocabularyCreateCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/template_vocabulary/logic/dto/TemplateVocabularyCreateCommand.java rename to server/api/src/main/java/vook/server/api/domain/template_vocabulary/logic/dto/TemplateVocabularyCreateCommand.java diff --git a/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateTerm.java b/server/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateTerm.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateTerm.java rename to server/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateTerm.java diff --git a/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateTermRepository.java b/server/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateTermRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateTermRepository.java rename to server/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateTermRepository.java diff --git a/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabulary.java b/server/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabulary.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabulary.java rename to server/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabulary.java diff --git a/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabularyRepository.java b/server/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabularyRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabularyRepository.java rename to server/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabularyRepository.java diff --git a/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabularyType.java b/server/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabularyType.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabularyType.java rename to server/api/src/main/java/vook/server/api/domain/template_vocabulary/model/TemplateVocabularyType.java diff --git a/api/src/main/java/vook/server/api/domain/template_vocabulary/package-info.java b/server/api/src/main/java/vook/server/api/domain/template_vocabulary/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/template_vocabulary/package-info.java rename to server/api/src/main/java/vook/server/api/domain/template_vocabulary/package-info.java diff --git a/api/src/main/java/vook/server/api/domain/user/exception/AlreadyOnboardingException.java b/server/api/src/main/java/vook/server/api/domain/user/exception/AlreadyOnboardingException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/exception/AlreadyOnboardingException.java rename to server/api/src/main/java/vook/server/api/domain/user/exception/AlreadyOnboardingException.java diff --git a/api/src/main/java/vook/server/api/domain/user/exception/AlreadyRegisteredException.java b/server/api/src/main/java/vook/server/api/domain/user/exception/AlreadyRegisteredException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/exception/AlreadyRegisteredException.java rename to server/api/src/main/java/vook/server/api/domain/user/exception/AlreadyRegisteredException.java diff --git a/api/src/main/java/vook/server/api/domain/user/exception/NotOnboardingException.java b/server/api/src/main/java/vook/server/api/domain/user/exception/NotOnboardingException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/exception/NotOnboardingException.java rename to server/api/src/main/java/vook/server/api/domain/user/exception/NotOnboardingException.java diff --git a/api/src/main/java/vook/server/api/domain/user/exception/NotReadyToOnboardingException.java b/server/api/src/main/java/vook/server/api/domain/user/exception/NotReadyToOnboardingException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/exception/NotReadyToOnboardingException.java rename to server/api/src/main/java/vook/server/api/domain/user/exception/NotReadyToOnboardingException.java diff --git a/api/src/main/java/vook/server/api/domain/user/exception/NotRegisteredException.java b/server/api/src/main/java/vook/server/api/domain/user/exception/NotRegisteredException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/exception/NotRegisteredException.java rename to server/api/src/main/java/vook/server/api/domain/user/exception/NotRegisteredException.java diff --git a/api/src/main/java/vook/server/api/domain/user/exception/NotWithdrawnUserException.java b/server/api/src/main/java/vook/server/api/domain/user/exception/NotWithdrawnUserException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/exception/NotWithdrawnUserException.java rename to server/api/src/main/java/vook/server/api/domain/user/exception/NotWithdrawnUserException.java diff --git a/api/src/main/java/vook/server/api/domain/user/exception/UserNotFoundException.java b/server/api/src/main/java/vook/server/api/domain/user/exception/UserNotFoundException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/exception/UserNotFoundException.java rename to server/api/src/main/java/vook/server/api/domain/user/exception/UserNotFoundException.java diff --git a/api/src/main/java/vook/server/api/domain/user/exception/WithdrawnUserException.java b/server/api/src/main/java/vook/server/api/domain/user/exception/WithdrawnUserException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/exception/WithdrawnUserException.java rename to server/api/src/main/java/vook/server/api/domain/user/exception/WithdrawnUserException.java diff --git a/api/src/main/java/vook/server/api/domain/user/logic/UserLogic.java b/server/api/src/main/java/vook/server/api/domain/user/logic/UserLogic.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/logic/UserLogic.java rename to server/api/src/main/java/vook/server/api/domain/user/logic/UserLogic.java diff --git a/api/src/main/java/vook/server/api/domain/user/logic/dto/UserOnboardingCommand.java b/server/api/src/main/java/vook/server/api/domain/user/logic/dto/UserOnboardingCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/logic/dto/UserOnboardingCommand.java rename to server/api/src/main/java/vook/server/api/domain/user/logic/dto/UserOnboardingCommand.java diff --git a/api/src/main/java/vook/server/api/domain/user/logic/dto/UserRegisterCommand.java b/server/api/src/main/java/vook/server/api/domain/user/logic/dto/UserRegisterCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/logic/dto/UserRegisterCommand.java rename to server/api/src/main/java/vook/server/api/domain/user/logic/dto/UserRegisterCommand.java diff --git a/api/src/main/java/vook/server/api/domain/user/logic/dto/UserSignUpFromSocialCommand.java b/server/api/src/main/java/vook/server/api/domain/user/logic/dto/UserSignUpFromSocialCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/logic/dto/UserSignUpFromSocialCommand.java rename to server/api/src/main/java/vook/server/api/domain/user/logic/dto/UserSignUpFromSocialCommand.java diff --git a/api/src/main/java/vook/server/api/domain/user/model/Funnel.java b/server/api/src/main/java/vook/server/api/domain/user/model/Funnel.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/model/Funnel.java rename to server/api/src/main/java/vook/server/api/domain/user/model/Funnel.java diff --git a/api/src/main/java/vook/server/api/domain/user/model/Job.java b/server/api/src/main/java/vook/server/api/domain/user/model/Job.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/model/Job.java rename to server/api/src/main/java/vook/server/api/domain/user/model/Job.java diff --git a/api/src/main/java/vook/server/api/domain/user/model/SocialUser.java b/server/api/src/main/java/vook/server/api/domain/user/model/SocialUser.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/model/SocialUser.java rename to server/api/src/main/java/vook/server/api/domain/user/model/SocialUser.java diff --git a/api/src/main/java/vook/server/api/domain/user/model/SocialUserRepository.java b/server/api/src/main/java/vook/server/api/domain/user/model/SocialUserRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/model/SocialUserRepository.java rename to server/api/src/main/java/vook/server/api/domain/user/model/SocialUserRepository.java diff --git a/api/src/main/java/vook/server/api/domain/user/model/User.java b/server/api/src/main/java/vook/server/api/domain/user/model/User.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/model/User.java rename to server/api/src/main/java/vook/server/api/domain/user/model/User.java diff --git a/api/src/main/java/vook/server/api/domain/user/model/UserInfo.java b/server/api/src/main/java/vook/server/api/domain/user/model/UserInfo.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/model/UserInfo.java rename to server/api/src/main/java/vook/server/api/domain/user/model/UserInfo.java diff --git a/api/src/main/java/vook/server/api/domain/user/model/UserInfoRepository.java b/server/api/src/main/java/vook/server/api/domain/user/model/UserInfoRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/model/UserInfoRepository.java rename to server/api/src/main/java/vook/server/api/domain/user/model/UserInfoRepository.java diff --git a/api/src/main/java/vook/server/api/domain/user/model/UserRepository.java b/server/api/src/main/java/vook/server/api/domain/user/model/UserRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/model/UserRepository.java rename to server/api/src/main/java/vook/server/api/domain/user/model/UserRepository.java diff --git a/api/src/main/java/vook/server/api/domain/user/model/UserStatus.java b/server/api/src/main/java/vook/server/api/domain/user/model/UserStatus.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/model/UserStatus.java rename to server/api/src/main/java/vook/server/api/domain/user/model/UserStatus.java diff --git a/api/src/main/java/vook/server/api/domain/user/package-info.java b/server/api/src/main/java/vook/server/api/domain/user/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/user/package-info.java rename to server/api/src/main/java/vook/server/api/domain/user/package-info.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/exception/TermLimitExceededException.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/exception/TermLimitExceededException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/exception/TermLimitExceededException.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/exception/TermLimitExceededException.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/exception/TermNotFoundException.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/exception/TermNotFoundException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/exception/TermNotFoundException.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/exception/TermNotFoundException.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyLimitExceededException.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyLimitExceededException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyLimitExceededException.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyLimitExceededException.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyNotFoundException.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyNotFoundException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyNotFoundException.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyNotFoundException.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyTermNotFoundException.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyTermNotFoundException.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyTermNotFoundException.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/exception/VocabularyTermNotFoundException.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/logic/TermLogic.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/logic/TermLogic.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/logic/TermLogic.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/logic/TermLogic.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/logic/VocabularyLogic.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/logic/VocabularyLogic.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/logic/VocabularyLogic.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/logic/VocabularyLogic.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermCreateAllCommand.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermCreateAllCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermCreateAllCommand.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermCreateAllCommand.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermCreateCommand.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermCreateCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermCreateCommand.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermCreateCommand.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermUpdateCommand.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermUpdateCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermUpdateCommand.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/TermUpdateCommand.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyCreateCommand.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyCreateCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyCreateCommand.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyCreateCommand.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyDeleteCommand.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyDeleteCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyDeleteCommand.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyDeleteCommand.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyUpdateCommand.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyUpdateCommand.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyUpdateCommand.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/logic/dto/VocabularyUpdateCommand.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/model/Term.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/model/Term.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/model/Term.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/model/Term.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/model/TermRepository.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/model/TermRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/model/TermRepository.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/model/TermRepository.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/model/UserUid.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/model/UserUid.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/model/UserUid.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/model/UserUid.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/model/Vocabulary.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/model/Vocabulary.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/model/Vocabulary.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/model/Vocabulary.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/model/VocabularyRepository.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/model/VocabularyRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/model/VocabularyRepository.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/model/VocabularyRepository.java diff --git a/api/src/main/java/vook/server/api/domain/vocabulary/package-info.java b/server/api/src/main/java/vook/server/api/domain/vocabulary/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/domain/vocabulary/package-info.java rename to server/api/src/main/java/vook/server/api/domain/vocabulary/package-info.java diff --git a/api/src/main/java/vook/server/api/globalcommon/annotation/DomainLogic.java b/server/api/src/main/java/vook/server/api/globalcommon/annotation/DomainLogic.java similarity index 100% rename from api/src/main/java/vook/server/api/globalcommon/annotation/DomainLogic.java rename to server/api/src/main/java/vook/server/api/globalcommon/annotation/DomainLogic.java diff --git a/api/src/main/java/vook/server/api/globalcommon/annotation/UseCase.java b/server/api/src/main/java/vook/server/api/globalcommon/annotation/UseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/globalcommon/annotation/UseCase.java rename to server/api/src/main/java/vook/server/api/globalcommon/annotation/UseCase.java diff --git a/api/src/main/java/vook/server/api/globalcommon/exception/AppException.java b/server/api/src/main/java/vook/server/api/globalcommon/exception/AppException.java similarity index 100% rename from api/src/main/java/vook/server/api/globalcommon/exception/AppException.java rename to server/api/src/main/java/vook/server/api/globalcommon/exception/AppException.java diff --git a/api/src/main/java/vook/server/api/globalcommon/exception/ExceptionConvertAdvisor.java b/server/api/src/main/java/vook/server/api/globalcommon/exception/ExceptionConvertAdvisor.java similarity index 100% rename from api/src/main/java/vook/server/api/globalcommon/exception/ExceptionConvertAdvisor.java rename to server/api/src/main/java/vook/server/api/globalcommon/exception/ExceptionConvertAdvisor.java diff --git a/api/src/main/java/vook/server/api/globalcommon/exception/ParameterValidateException.java b/server/api/src/main/java/vook/server/api/globalcommon/exception/ParameterValidateException.java similarity index 100% rename from api/src/main/java/vook/server/api/globalcommon/exception/ParameterValidateException.java rename to server/api/src/main/java/vook/server/api/globalcommon/exception/ParameterValidateException.java diff --git a/api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTHelper.java b/server/api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTHelper.java similarity index 100% rename from api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTHelper.java rename to server/api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTHelper.java diff --git a/api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTReader.java b/server/api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTReader.java similarity index 100% rename from api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTReader.java rename to server/api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTReader.java diff --git a/api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTWriter.java b/server/api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTWriter.java similarity index 100% rename from api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTWriter.java rename to server/api/src/main/java/vook/server/api/globalcommon/helper/jwt/JWTWriter.java diff --git a/api/src/main/java/vook/server/api/globalcommon/helper/querydsl/QuerydslHelper.java b/server/api/src/main/java/vook/server/api/globalcommon/helper/querydsl/QuerydslHelper.java similarity index 100% rename from api/src/main/java/vook/server/api/globalcommon/helper/querydsl/QuerydslHelper.java rename to server/api/src/main/java/vook/server/api/globalcommon/helper/querydsl/QuerydslHelper.java diff --git a/api/src/main/java/vook/server/api/infra/package-info.java b/server/api/src/main/java/vook/server/api/infra/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/infra/package-info.java rename to server/api/src/main/java/vook/server/api/infra/package-info.java diff --git a/api/src/main/java/vook/server/api/infra/search/common/MeilisearchProperties.java b/server/api/src/main/java/vook/server/api/infra/search/common/MeilisearchProperties.java similarity index 100% rename from api/src/main/java/vook/server/api/infra/search/common/MeilisearchProperties.java rename to server/api/src/main/java/vook/server/api/infra/search/common/MeilisearchProperties.java diff --git a/api/src/main/java/vook/server/api/infra/search/common/MeilisearchService.java b/server/api/src/main/java/vook/server/api/infra/search/common/MeilisearchService.java similarity index 100% rename from api/src/main/java/vook/server/api/infra/search/common/MeilisearchService.java rename to server/api/src/main/java/vook/server/api/infra/search/common/MeilisearchService.java diff --git a/api/src/main/java/vook/server/api/infra/search/demo/MeilisearchDemoTermSearchService.java b/server/api/src/main/java/vook/server/api/infra/search/demo/MeilisearchDemoTermSearchService.java similarity index 100% rename from api/src/main/java/vook/server/api/infra/search/demo/MeilisearchDemoTermSearchService.java rename to server/api/src/main/java/vook/server/api/infra/search/demo/MeilisearchDemoTermSearchService.java diff --git a/api/src/main/java/vook/server/api/infra/search/vocabulary/MeilisearchVocabularySearchService.java b/server/api/src/main/java/vook/server/api/infra/search/vocabulary/MeilisearchVocabularySearchService.java similarity index 100% rename from api/src/main/java/vook/server/api/infra/search/vocabulary/MeilisearchVocabularySearchService.java rename to server/api/src/main/java/vook/server/api/infra/search/vocabulary/MeilisearchVocabularySearchService.java diff --git a/api/src/main/java/vook/server/api/infra/term/JpaTermSearchRepository.java b/server/api/src/main/java/vook/server/api/infra/term/JpaTermSearchRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/infra/term/JpaTermSearchRepository.java rename to server/api/src/main/java/vook/server/api/infra/term/JpaTermSearchRepository.java diff --git a/api/src/main/java/vook/server/api/infra/vocabulary/DefaultVocabularyRepository.java b/server/api/src/main/java/vook/server/api/infra/vocabulary/DefaultVocabularyRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/infra/vocabulary/DefaultVocabularyRepository.java rename to server/api/src/main/java/vook/server/api/infra/vocabulary/DefaultVocabularyRepository.java diff --git a/api/src/main/java/vook/server/api/infra/vocabulary/cache/UserVocabularyCache.java b/server/api/src/main/java/vook/server/api/infra/vocabulary/cache/UserVocabularyCache.java similarity index 100% rename from api/src/main/java/vook/server/api/infra/vocabulary/cache/UserVocabularyCache.java rename to server/api/src/main/java/vook/server/api/infra/vocabulary/cache/UserVocabularyCache.java diff --git a/api/src/main/java/vook/server/api/infra/vocabulary/cache/UserVocabularyCacheRepository.java b/server/api/src/main/java/vook/server/api/infra/vocabulary/cache/UserVocabularyCacheRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/infra/vocabulary/cache/UserVocabularyCacheRepository.java rename to server/api/src/main/java/vook/server/api/infra/vocabulary/cache/UserVocabularyCacheRepository.java diff --git a/api/src/main/java/vook/server/api/infra/vocabulary/jpa/VocabularyJpaRepository.java b/server/api/src/main/java/vook/server/api/infra/vocabulary/jpa/VocabularyJpaRepository.java similarity index 100% rename from api/src/main/java/vook/server/api/infra/vocabulary/jpa/VocabularyJpaRepository.java rename to server/api/src/main/java/vook/server/api/infra/vocabulary/jpa/VocabularyJpaRepository.java diff --git a/api/src/main/java/vook/server/api/policy/PolicyException.java b/server/api/src/main/java/vook/server/api/policy/PolicyException.java similarity index 100% rename from api/src/main/java/vook/server/api/policy/PolicyException.java rename to server/api/src/main/java/vook/server/api/policy/PolicyException.java diff --git a/api/src/main/java/vook/server/api/policy/VocabularyPolicy.java b/server/api/src/main/java/vook/server/api/policy/VocabularyPolicy.java similarity index 100% rename from api/src/main/java/vook/server/api/policy/VocabularyPolicy.java rename to server/api/src/main/java/vook/server/api/policy/VocabularyPolicy.java diff --git a/api/src/main/java/vook/server/api/web/auth/AuthApi.java b/server/api/src/main/java/vook/server/api/web/auth/AuthApi.java similarity index 100% rename from api/src/main/java/vook/server/api/web/auth/AuthApi.java rename to server/api/src/main/java/vook/server/api/web/auth/AuthApi.java diff --git a/api/src/main/java/vook/server/api/web/auth/AuthRestController.java b/server/api/src/main/java/vook/server/api/web/auth/AuthRestController.java similarity index 100% rename from api/src/main/java/vook/server/api/web/auth/AuthRestController.java rename to server/api/src/main/java/vook/server/api/web/auth/AuthRestController.java diff --git a/api/src/main/java/vook/server/api/web/auth/package-info.java b/server/api/src/main/java/vook/server/api/web/auth/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/web/auth/package-info.java rename to server/api/src/main/java/vook/server/api/web/auth/package-info.java diff --git a/api/src/main/java/vook/server/api/web/common/auth/app/JWTHelperProvider.java b/server/api/src/main/java/vook/server/api/web/common/auth/app/JWTHelperProvider.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/auth/app/JWTHelperProvider.java rename to server/api/src/main/java/vook/server/api/web/common/auth/app/JWTHelperProvider.java diff --git a/api/src/main/java/vook/server/api/web/common/auth/app/TokenService.java b/server/api/src/main/java/vook/server/api/web/common/auth/app/TokenService.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/auth/app/TokenService.java rename to server/api/src/main/java/vook/server/api/web/common/auth/app/TokenService.java diff --git a/api/src/main/java/vook/server/api/web/common/auth/data/AuthValues.java b/server/api/src/main/java/vook/server/api/web/common/auth/data/AuthValues.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/auth/data/AuthValues.java rename to server/api/src/main/java/vook/server/api/web/common/auth/data/AuthValues.java diff --git a/api/src/main/java/vook/server/api/web/common/auth/data/GeneratedToken.java b/server/api/src/main/java/vook/server/api/web/common/auth/data/GeneratedToken.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/auth/data/GeneratedToken.java rename to server/api/src/main/java/vook/server/api/web/common/auth/data/GeneratedToken.java diff --git a/api/src/main/java/vook/server/api/web/common/auth/data/VookLoginUser.java b/server/api/src/main/java/vook/server/api/web/common/auth/data/VookLoginUser.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/auth/data/VookLoginUser.java rename to server/api/src/main/java/vook/server/api/web/common/auth/data/VookLoginUser.java diff --git a/api/src/main/java/vook/server/api/web/common/auth/jwt/JWTFilter.java b/server/api/src/main/java/vook/server/api/web/common/auth/jwt/JWTFilter.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/auth/jwt/JWTFilter.java rename to server/api/src/main/java/vook/server/api/web/common/auth/jwt/JWTFilter.java diff --git a/api/src/main/java/vook/server/api/web/common/auth/oauth2/LoginSuccessHandler.java b/server/api/src/main/java/vook/server/api/web/common/auth/oauth2/LoginSuccessHandler.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/auth/oauth2/LoginSuccessHandler.java rename to server/api/src/main/java/vook/server/api/web/common/auth/oauth2/LoginSuccessHandler.java diff --git a/api/src/main/java/vook/server/api/web/common/auth/oauth2/OAuth2GoogleResponse.java b/server/api/src/main/java/vook/server/api/web/common/auth/oauth2/OAuth2GoogleResponse.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/auth/oauth2/OAuth2GoogleResponse.java rename to server/api/src/main/java/vook/server/api/web/common/auth/oauth2/OAuth2GoogleResponse.java diff --git a/api/src/main/java/vook/server/api/web/common/auth/oauth2/OAuth2Response.java b/server/api/src/main/java/vook/server/api/web/common/auth/oauth2/OAuth2Response.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/auth/oauth2/OAuth2Response.java rename to server/api/src/main/java/vook/server/api/web/common/auth/oauth2/OAuth2Response.java diff --git a/api/src/main/java/vook/server/api/web/common/auth/oauth2/VookOAuth2UserService.java b/server/api/src/main/java/vook/server/api/web/common/auth/oauth2/VookOAuth2UserService.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/auth/oauth2/VookOAuth2UserService.java rename to server/api/src/main/java/vook/server/api/web/common/auth/oauth2/VookOAuth2UserService.java diff --git a/api/src/main/java/vook/server/api/web/common/package-info.java b/server/api/src/main/java/vook/server/api/web/common/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/package-info.java rename to server/api/src/main/java/vook/server/api/web/common/package-info.java diff --git a/api/src/main/java/vook/server/api/web/common/response/ApiResponseCode.java b/server/api/src/main/java/vook/server/api/web/common/response/ApiResponseCode.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/response/ApiResponseCode.java rename to server/api/src/main/java/vook/server/api/web/common/response/ApiResponseCode.java diff --git a/api/src/main/java/vook/server/api/web/common/response/CommonApiException.java b/server/api/src/main/java/vook/server/api/web/common/response/CommonApiException.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/response/CommonApiException.java rename to server/api/src/main/java/vook/server/api/web/common/response/CommonApiException.java diff --git a/api/src/main/java/vook/server/api/web/common/response/CommonApiResponse.java b/server/api/src/main/java/vook/server/api/web/common/response/CommonApiResponse.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/response/CommonApiResponse.java rename to server/api/src/main/java/vook/server/api/web/common/response/CommonApiResponse.java diff --git a/api/src/main/java/vook/server/api/web/common/response/GlobalRestControllerAdvice.java b/server/api/src/main/java/vook/server/api/web/common/response/GlobalRestControllerAdvice.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/response/GlobalRestControllerAdvice.java rename to server/api/src/main/java/vook/server/api/web/common/response/GlobalRestControllerAdvice.java diff --git a/api/src/main/java/vook/server/api/web/common/swagger/ComponentRefConsts.java b/server/api/src/main/java/vook/server/api/web/common/swagger/ComponentRefConsts.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/swagger/ComponentRefConsts.java rename to server/api/src/main/java/vook/server/api/web/common/swagger/ComponentRefConsts.java diff --git a/api/src/main/java/vook/server/api/web/common/swagger/GlobalOpenApiCustomizerImpl.java b/server/api/src/main/java/vook/server/api/web/common/swagger/GlobalOpenApiCustomizerImpl.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/swagger/GlobalOpenApiCustomizerImpl.java rename to server/api/src/main/java/vook/server/api/web/common/swagger/GlobalOpenApiCustomizerImpl.java diff --git a/api/src/main/java/vook/server/api/web/common/swagger/GlobalOperationCustomizerImpl.java b/server/api/src/main/java/vook/server/api/web/common/swagger/GlobalOperationCustomizerImpl.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/swagger/GlobalOperationCustomizerImpl.java rename to server/api/src/main/java/vook/server/api/web/common/swagger/GlobalOperationCustomizerImpl.java diff --git a/api/src/main/java/vook/server/api/web/common/swagger/OpenApiDefinition.java b/server/api/src/main/java/vook/server/api/web/common/swagger/OpenApiDefinition.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/swagger/OpenApiDefinition.java rename to server/api/src/main/java/vook/server/api/web/common/swagger/OpenApiDefinition.java diff --git a/api/src/main/java/vook/server/api/web/common/swagger/annotation/IncludeBadRequestResponse.java b/server/api/src/main/java/vook/server/api/web/common/swagger/annotation/IncludeBadRequestResponse.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/swagger/annotation/IncludeBadRequestResponse.java rename to server/api/src/main/java/vook/server/api/web/common/swagger/annotation/IncludeBadRequestResponse.java diff --git a/api/src/main/java/vook/server/api/web/common/swagger/annotation/IncludeOkResponse.java b/server/api/src/main/java/vook/server/api/web/common/swagger/annotation/IncludeOkResponse.java similarity index 100% rename from api/src/main/java/vook/server/api/web/common/swagger/annotation/IncludeOkResponse.java rename to server/api/src/main/java/vook/server/api/web/common/swagger/annotation/IncludeOkResponse.java diff --git a/api/src/main/java/vook/server/api/web/demo/DemoApi.java b/server/api/src/main/java/vook/server/api/web/demo/DemoApi.java similarity index 100% rename from api/src/main/java/vook/server/api/web/demo/DemoApi.java rename to server/api/src/main/java/vook/server/api/web/demo/DemoApi.java diff --git a/api/src/main/java/vook/server/api/web/demo/DemoRestController.java b/server/api/src/main/java/vook/server/api/web/demo/DemoRestController.java similarity index 100% rename from api/src/main/java/vook/server/api/web/demo/DemoRestController.java rename to server/api/src/main/java/vook/server/api/web/demo/DemoRestController.java diff --git a/api/src/main/java/vook/server/api/web/demo/package-info.java b/server/api/src/main/java/vook/server/api/web/demo/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/web/demo/package-info.java rename to server/api/src/main/java/vook/server/api/web/demo/package-info.java diff --git a/api/src/main/java/vook/server/api/web/demo/reqres/SearchTermRequest.java b/server/api/src/main/java/vook/server/api/web/demo/reqres/SearchTermRequest.java similarity index 100% rename from api/src/main/java/vook/server/api/web/demo/reqres/SearchTermRequest.java rename to server/api/src/main/java/vook/server/api/web/demo/reqres/SearchTermRequest.java diff --git a/api/src/main/java/vook/server/api/web/demo/reqres/SearchTermResponse.java b/server/api/src/main/java/vook/server/api/web/demo/reqres/SearchTermResponse.java similarity index 100% rename from api/src/main/java/vook/server/api/web/demo/reqres/SearchTermResponse.java rename to server/api/src/main/java/vook/server/api/web/demo/reqres/SearchTermResponse.java diff --git a/api/src/main/java/vook/server/api/web/health/HealthApi.java b/server/api/src/main/java/vook/server/api/web/health/HealthApi.java similarity index 100% rename from api/src/main/java/vook/server/api/web/health/HealthApi.java rename to server/api/src/main/java/vook/server/api/web/health/HealthApi.java diff --git a/api/src/main/java/vook/server/api/web/health/HealthController.java b/server/api/src/main/java/vook/server/api/web/health/HealthController.java similarity index 100% rename from api/src/main/java/vook/server/api/web/health/HealthController.java rename to server/api/src/main/java/vook/server/api/web/health/HealthController.java diff --git a/api/src/main/java/vook/server/api/web/health/package-info.java b/server/api/src/main/java/vook/server/api/web/health/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/web/health/package-info.java rename to server/api/src/main/java/vook/server/api/web/health/package-info.java diff --git a/api/src/main/java/vook/server/api/web/term/TermApi.java b/server/api/src/main/java/vook/server/api/web/term/TermApi.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/TermApi.java rename to server/api/src/main/java/vook/server/api/web/term/TermApi.java diff --git a/api/src/main/java/vook/server/api/web/term/TermRestController.java b/server/api/src/main/java/vook/server/api/web/term/TermRestController.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/TermRestController.java rename to server/api/src/main/java/vook/server/api/web/term/TermRestController.java diff --git a/api/src/main/java/vook/server/api/web/term/package-info.java b/server/api/src/main/java/vook/server/api/web/term/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/package-info.java rename to server/api/src/main/java/vook/server/api/web/term/package-info.java diff --git a/api/src/main/java/vook/server/api/web/term/reqres/TermBatchDeleteRequest.java b/server/api/src/main/java/vook/server/api/web/term/reqres/TermBatchDeleteRequest.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/reqres/TermBatchDeleteRequest.java rename to server/api/src/main/java/vook/server/api/web/term/reqres/TermBatchDeleteRequest.java diff --git a/api/src/main/java/vook/server/api/web/term/reqres/TermCreateRequest.java b/server/api/src/main/java/vook/server/api/web/term/reqres/TermCreateRequest.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/reqres/TermCreateRequest.java rename to server/api/src/main/java/vook/server/api/web/term/reqres/TermCreateRequest.java diff --git a/api/src/main/java/vook/server/api/web/term/reqres/TermCreateResponse.java b/server/api/src/main/java/vook/server/api/web/term/reqres/TermCreateResponse.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/reqres/TermCreateResponse.java rename to server/api/src/main/java/vook/server/api/web/term/reqres/TermCreateResponse.java diff --git a/api/src/main/java/vook/server/api/web/term/reqres/TermResponse.java b/server/api/src/main/java/vook/server/api/web/term/reqres/TermResponse.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/reqres/TermResponse.java rename to server/api/src/main/java/vook/server/api/web/term/reqres/TermResponse.java diff --git a/api/src/main/java/vook/server/api/web/term/reqres/TermSearchRequest.java b/server/api/src/main/java/vook/server/api/web/term/reqres/TermSearchRequest.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/reqres/TermSearchRequest.java rename to server/api/src/main/java/vook/server/api/web/term/reqres/TermSearchRequest.java diff --git a/api/src/main/java/vook/server/api/web/term/reqres/TermSearchResponse.java b/server/api/src/main/java/vook/server/api/web/term/reqres/TermSearchResponse.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/reqres/TermSearchResponse.java rename to server/api/src/main/java/vook/server/api/web/term/reqres/TermSearchResponse.java diff --git a/api/src/main/java/vook/server/api/web/term/reqres/TermUpdateRequest.java b/server/api/src/main/java/vook/server/api/web/term/reqres/TermUpdateRequest.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/reqres/TermUpdateRequest.java rename to server/api/src/main/java/vook/server/api/web/term/reqres/TermUpdateRequest.java diff --git a/api/src/main/java/vook/server/api/web/term/usecase/BatchDeleteTermUseCase.java b/server/api/src/main/java/vook/server/api/web/term/usecase/BatchDeleteTermUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/usecase/BatchDeleteTermUseCase.java rename to server/api/src/main/java/vook/server/api/web/term/usecase/BatchDeleteTermUseCase.java diff --git a/api/src/main/java/vook/server/api/web/term/usecase/CreateTermUseCase.java b/server/api/src/main/java/vook/server/api/web/term/usecase/CreateTermUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/usecase/CreateTermUseCase.java rename to server/api/src/main/java/vook/server/api/web/term/usecase/CreateTermUseCase.java diff --git a/api/src/main/java/vook/server/api/web/term/usecase/DeleteTermUseCase.java b/server/api/src/main/java/vook/server/api/web/term/usecase/DeleteTermUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/usecase/DeleteTermUseCase.java rename to server/api/src/main/java/vook/server/api/web/term/usecase/DeleteTermUseCase.java diff --git a/api/src/main/java/vook/server/api/web/term/usecase/RetrieveTermUseCase.java b/server/api/src/main/java/vook/server/api/web/term/usecase/RetrieveTermUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/usecase/RetrieveTermUseCase.java rename to server/api/src/main/java/vook/server/api/web/term/usecase/RetrieveTermUseCase.java diff --git a/api/src/main/java/vook/server/api/web/term/usecase/SearchTermUseCase.java b/server/api/src/main/java/vook/server/api/web/term/usecase/SearchTermUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/usecase/SearchTermUseCase.java rename to server/api/src/main/java/vook/server/api/web/term/usecase/SearchTermUseCase.java diff --git a/api/src/main/java/vook/server/api/web/term/usecase/UpdateTermUseCase.java b/server/api/src/main/java/vook/server/api/web/term/usecase/UpdateTermUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/term/usecase/UpdateTermUseCase.java rename to server/api/src/main/java/vook/server/api/web/term/usecase/UpdateTermUseCase.java diff --git a/api/src/main/java/vook/server/api/web/user/UserApi.java b/server/api/src/main/java/vook/server/api/web/user/UserApi.java similarity index 100% rename from api/src/main/java/vook/server/api/web/user/UserApi.java rename to server/api/src/main/java/vook/server/api/web/user/UserApi.java diff --git a/api/src/main/java/vook/server/api/web/user/UserRestController.java b/server/api/src/main/java/vook/server/api/web/user/UserRestController.java similarity index 100% rename from api/src/main/java/vook/server/api/web/user/UserRestController.java rename to server/api/src/main/java/vook/server/api/web/user/UserRestController.java diff --git a/api/src/main/java/vook/server/api/web/user/package-info.java b/server/api/src/main/java/vook/server/api/web/user/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/web/user/package-info.java rename to server/api/src/main/java/vook/server/api/web/user/package-info.java diff --git a/api/src/main/java/vook/server/api/web/user/reqres/UserInfoResponse.java b/server/api/src/main/java/vook/server/api/web/user/reqres/UserInfoResponse.java similarity index 100% rename from api/src/main/java/vook/server/api/web/user/reqres/UserInfoResponse.java rename to server/api/src/main/java/vook/server/api/web/user/reqres/UserInfoResponse.java diff --git a/api/src/main/java/vook/server/api/web/user/reqres/UserOnboardingRequest.java b/server/api/src/main/java/vook/server/api/web/user/reqres/UserOnboardingRequest.java similarity index 100% rename from api/src/main/java/vook/server/api/web/user/reqres/UserOnboardingRequest.java rename to server/api/src/main/java/vook/server/api/web/user/reqres/UserOnboardingRequest.java diff --git a/api/src/main/java/vook/server/api/web/user/reqres/UserRegisterRequest.java b/server/api/src/main/java/vook/server/api/web/user/reqres/UserRegisterRequest.java similarity index 100% rename from api/src/main/java/vook/server/api/web/user/reqres/UserRegisterRequest.java rename to server/api/src/main/java/vook/server/api/web/user/reqres/UserRegisterRequest.java diff --git a/api/src/main/java/vook/server/api/web/user/reqres/UserUpdateInfoRequest.java b/server/api/src/main/java/vook/server/api/web/user/reqres/UserUpdateInfoRequest.java similarity index 100% rename from api/src/main/java/vook/server/api/web/user/reqres/UserUpdateInfoRequest.java rename to server/api/src/main/java/vook/server/api/web/user/reqres/UserUpdateInfoRequest.java diff --git a/api/src/main/java/vook/server/api/web/user/usecase/OnboardingUserUseCase.java b/server/api/src/main/java/vook/server/api/web/user/usecase/OnboardingUserUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/user/usecase/OnboardingUserUseCase.java rename to server/api/src/main/java/vook/server/api/web/user/usecase/OnboardingUserUseCase.java diff --git a/api/src/main/java/vook/server/api/web/user/usecase/WithdrawUserUseCase.java b/server/api/src/main/java/vook/server/api/web/user/usecase/WithdrawUserUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/user/usecase/WithdrawUserUseCase.java rename to server/api/src/main/java/vook/server/api/web/user/usecase/WithdrawUserUseCase.java diff --git a/api/src/main/java/vook/server/api/web/vocabulary/VocabularyApi.java b/server/api/src/main/java/vook/server/api/web/vocabulary/VocabularyApi.java similarity index 100% rename from api/src/main/java/vook/server/api/web/vocabulary/VocabularyApi.java rename to server/api/src/main/java/vook/server/api/web/vocabulary/VocabularyApi.java diff --git a/api/src/main/java/vook/server/api/web/vocabulary/VocabularyRestController.java b/server/api/src/main/java/vook/server/api/web/vocabulary/VocabularyRestController.java similarity index 100% rename from api/src/main/java/vook/server/api/web/vocabulary/VocabularyRestController.java rename to server/api/src/main/java/vook/server/api/web/vocabulary/VocabularyRestController.java diff --git a/api/src/main/java/vook/server/api/web/vocabulary/package-info.java b/server/api/src/main/java/vook/server/api/web/vocabulary/package-info.java similarity index 100% rename from api/src/main/java/vook/server/api/web/vocabulary/package-info.java rename to server/api/src/main/java/vook/server/api/web/vocabulary/package-info.java diff --git a/api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyCreateRequest.java b/server/api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyCreateRequest.java similarity index 100% rename from api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyCreateRequest.java rename to server/api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyCreateRequest.java diff --git a/api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyResponse.java b/server/api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyResponse.java similarity index 100% rename from api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyResponse.java rename to server/api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyResponse.java diff --git a/api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyUpdateRequest.java b/server/api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyUpdateRequest.java similarity index 100% rename from api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyUpdateRequest.java rename to server/api/src/main/java/vook/server/api/web/vocabulary/reqres/VocabularyUpdateRequest.java diff --git a/api/src/main/java/vook/server/api/web/vocabulary/usecase/CreateVocabularyUseCase.java b/server/api/src/main/java/vook/server/api/web/vocabulary/usecase/CreateVocabularyUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/vocabulary/usecase/CreateVocabularyUseCase.java rename to server/api/src/main/java/vook/server/api/web/vocabulary/usecase/CreateVocabularyUseCase.java diff --git a/api/src/main/java/vook/server/api/web/vocabulary/usecase/DeleteVocabularyUseCase.java b/server/api/src/main/java/vook/server/api/web/vocabulary/usecase/DeleteVocabularyUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/vocabulary/usecase/DeleteVocabularyUseCase.java rename to server/api/src/main/java/vook/server/api/web/vocabulary/usecase/DeleteVocabularyUseCase.java diff --git a/api/src/main/java/vook/server/api/web/vocabulary/usecase/RetrieveVocabularyUseCase.java b/server/api/src/main/java/vook/server/api/web/vocabulary/usecase/RetrieveVocabularyUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/vocabulary/usecase/RetrieveVocabularyUseCase.java rename to server/api/src/main/java/vook/server/api/web/vocabulary/usecase/RetrieveVocabularyUseCase.java diff --git a/api/src/main/java/vook/server/api/web/vocabulary/usecase/UpdateVocabularyUseCase.java b/server/api/src/main/java/vook/server/api/web/vocabulary/usecase/UpdateVocabularyUseCase.java similarity index 100% rename from api/src/main/java/vook/server/api/web/vocabulary/usecase/UpdateVocabularyUseCase.java rename to server/api/src/main/java/vook/server/api/web/vocabulary/usecase/UpdateVocabularyUseCase.java diff --git a/api/src/main/resources/application-local.yml b/server/api/src/main/resources/application-local.yml similarity index 100% rename from api/src/main/resources/application-local.yml rename to server/api/src/main/resources/application-local.yml diff --git a/api/src/main/resources/application-modulith.yml b/server/api/src/main/resources/application-modulith.yml similarity index 100% rename from api/src/main/resources/application-modulith.yml rename to server/api/src/main/resources/application-modulith.yml diff --git a/api/src/main/resources/application.yml b/server/api/src/main/resources/application.yml similarity index 100% rename from api/src/main/resources/application.yml rename to server/api/src/main/resources/application.yml diff --git "a/api/src/main/resources/init/\353\215\260\353\252\250.tsv" "b/server/api/src/main/resources/init/\353\215\260\353\252\250.tsv" similarity index 100% rename from "api/src/main/resources/init/\353\215\260\353\252\250.tsv" rename to "server/api/src/main/resources/init/\353\215\260\353\252\250.tsv" diff --git "a/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\352\260\234\353\260\234.tsv" "b/server/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\352\260\234\353\260\234.tsv" similarity index 100% rename from "api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\352\260\234\353\260\234.tsv" rename to "server/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\352\260\234\353\260\234.tsv" diff --git "a/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\353\224\224\354\236\220\354\235\270.tsv" "b/server/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\353\224\224\354\236\220\354\235\270.tsv" similarity index 100% rename from "api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\353\224\224\354\236\220\354\235\270.tsv" rename to "server/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\353\224\224\354\236\220\354\235\270.tsv" diff --git "a/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\353\247\210\354\274\200\355\214\205.tsv" "b/server/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\353\247\210\354\274\200\355\214\205.tsv" similarity index 100% rename from "api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\353\247\210\354\274\200\355\214\205.tsv" rename to "server/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\353\247\210\354\274\200\355\214\205.tsv" diff --git "a/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\354\235\274\353\260\230\354\202\254\353\254\264.tsv" "b/server/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\354\235\274\353\260\230\354\202\254\353\254\264.tsv" similarity index 100% rename from "api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\354\235\274\353\260\230\354\202\254\353\254\264.tsv" rename to "server/api/src/main/resources/init/\355\205\234\355\224\214\353\246\277\354\232\251\354\226\264\354\247\221-\354\235\274\353\260\230\354\202\254\353\254\264.tsv" diff --git a/api/src/test/java/vook/server/api/ApiApplicationTest.java b/server/api/src/test/java/vook/server/api/ApiApplicationTest.java similarity index 100% rename from api/src/test/java/vook/server/api/ApiApplicationTest.java rename to server/api/src/test/java/vook/server/api/ApiApplicationTest.java diff --git a/api/src/test/java/vook/server/api/devhelper/helper/CsvReaderTest.java b/server/api/src/test/java/vook/server/api/devhelper/helper/CsvReaderTest.java similarity index 100% rename from api/src/test/java/vook/server/api/devhelper/helper/CsvReaderTest.java rename to server/api/src/test/java/vook/server/api/devhelper/helper/CsvReaderTest.java diff --git a/api/src/test/java/vook/server/api/domain/demo/logic/DemoLogicTest.java b/server/api/src/test/java/vook/server/api/domain/demo/logic/DemoLogicTest.java similarity index 97% rename from api/src/test/java/vook/server/api/domain/demo/logic/DemoLogicTest.java rename to server/api/src/test/java/vook/server/api/domain/demo/logic/DemoLogicTest.java index 04935d6a..aeca3237 100644 --- a/api/src/test/java/vook/server/api/domain/demo/logic/DemoLogicTest.java +++ b/server/api/src/test/java/vook/server/api/domain/demo/logic/DemoLogicTest.java @@ -35,7 +35,7 @@ class DemoLogicTest extends IntegrationTestBase { @BeforeAll void beforeAll() { List terms = testTermsLoader.getTerms( - "classpath:init/데모.tsv", + "classpath:init/demo.tsv", InitService::convertToDemoTerm ); demoTermRepository.saveAll(terms); diff --git a/api/src/test/java/vook/server/api/domain/template_vocabulary/logic/TemplateVocabularyLogicTest.java b/server/api/src/test/java/vook/server/api/domain/template_vocabulary/logic/TemplateVocabularyLogicTest.java similarity index 100% rename from api/src/test/java/vook/server/api/domain/template_vocabulary/logic/TemplateVocabularyLogicTest.java rename to server/api/src/test/java/vook/server/api/domain/template_vocabulary/logic/TemplateVocabularyLogicTest.java diff --git a/api/src/test/java/vook/server/api/domain/user/logic/UserLogicTest.java b/server/api/src/test/java/vook/server/api/domain/user/logic/UserLogicTest.java similarity index 100% rename from api/src/test/java/vook/server/api/domain/user/logic/UserLogicTest.java rename to server/api/src/test/java/vook/server/api/domain/user/logic/UserLogicTest.java diff --git a/api/src/test/java/vook/server/api/domain/vocabulary/logic/TermLogicTest.java b/server/api/src/test/java/vook/server/api/domain/vocabulary/logic/TermLogicTest.java similarity index 100% rename from api/src/test/java/vook/server/api/domain/vocabulary/logic/TermLogicTest.java rename to server/api/src/test/java/vook/server/api/domain/vocabulary/logic/TermLogicTest.java diff --git a/api/src/test/java/vook/server/api/domain/vocabulary/logic/VocabularyLogicTest.java b/server/api/src/test/java/vook/server/api/domain/vocabulary/logic/VocabularyLogicTest.java similarity index 100% rename from api/src/test/java/vook/server/api/domain/vocabulary/logic/VocabularyLogicTest.java rename to server/api/src/test/java/vook/server/api/domain/vocabulary/logic/VocabularyLogicTest.java diff --git a/api/src/test/java/vook/server/api/infra/vocabulary/DefaultVocabularyRepositoryTest.java b/server/api/src/test/java/vook/server/api/infra/vocabulary/DefaultVocabularyRepositoryTest.java similarity index 100% rename from api/src/test/java/vook/server/api/infra/vocabulary/DefaultVocabularyRepositoryTest.java rename to server/api/src/test/java/vook/server/api/infra/vocabulary/DefaultVocabularyRepositoryTest.java diff --git a/api/src/test/java/vook/server/api/policy/VocabularyPolicyTest.java b/server/api/src/test/java/vook/server/api/policy/VocabularyPolicyTest.java similarity index 100% rename from api/src/test/java/vook/server/api/policy/VocabularyPolicyTest.java rename to server/api/src/test/java/vook/server/api/policy/VocabularyPolicyTest.java diff --git a/api/src/test/java/vook/server/api/testhelper/HttpEntityBuilder.java b/server/api/src/test/java/vook/server/api/testhelper/HttpEntityBuilder.java similarity index 100% rename from api/src/test/java/vook/server/api/testhelper/HttpEntityBuilder.java rename to server/api/src/test/java/vook/server/api/testhelper/HttpEntityBuilder.java diff --git a/api/src/test/java/vook/server/api/testhelper/IntegrationTestBase.java b/server/api/src/test/java/vook/server/api/testhelper/IntegrationTestBase.java similarity index 100% rename from api/src/test/java/vook/server/api/testhelper/IntegrationTestBase.java rename to server/api/src/test/java/vook/server/api/testhelper/IntegrationTestBase.java diff --git a/api/src/test/java/vook/server/api/testhelper/MeilisearchContainer.java b/server/api/src/test/java/vook/server/api/testhelper/MeilisearchContainer.java similarity index 100% rename from api/src/test/java/vook/server/api/testhelper/MeilisearchContainer.java rename to server/api/src/test/java/vook/server/api/testhelper/MeilisearchContainer.java diff --git a/api/src/test/java/vook/server/api/testhelper/TestcontainersConfiguration.java b/server/api/src/test/java/vook/server/api/testhelper/TestcontainersConfiguration.java similarity index 100% rename from api/src/test/java/vook/server/api/testhelper/TestcontainersConfiguration.java rename to server/api/src/test/java/vook/server/api/testhelper/TestcontainersConfiguration.java diff --git a/api/src/test/java/vook/server/api/testhelper/creator/TestTemplateVocabularyCreator.java b/server/api/src/test/java/vook/server/api/testhelper/creator/TestTemplateVocabularyCreator.java similarity index 100% rename from api/src/test/java/vook/server/api/testhelper/creator/TestTemplateVocabularyCreator.java rename to server/api/src/test/java/vook/server/api/testhelper/creator/TestTemplateVocabularyCreator.java diff --git a/api/src/test/java/vook/server/api/testhelper/creator/TestUserCreator.java b/server/api/src/test/java/vook/server/api/testhelper/creator/TestUserCreator.java similarity index 100% rename from api/src/test/java/vook/server/api/testhelper/creator/TestUserCreator.java rename to server/api/src/test/java/vook/server/api/testhelper/creator/TestUserCreator.java diff --git a/api/src/test/java/vook/server/api/testhelper/creator/TestVocabularyCreator.java b/server/api/src/test/java/vook/server/api/testhelper/creator/TestVocabularyCreator.java similarity index 100% rename from api/src/test/java/vook/server/api/testhelper/creator/TestVocabularyCreator.java rename to server/api/src/test/java/vook/server/api/testhelper/creator/TestVocabularyCreator.java diff --git a/api/src/test/java/vook/server/api/web/term/usecase/BatchDeleteTermUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/term/usecase/BatchDeleteTermUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/term/usecase/BatchDeleteTermUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/term/usecase/BatchDeleteTermUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/term/usecase/CreateTermUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/term/usecase/CreateTermUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/term/usecase/CreateTermUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/term/usecase/CreateTermUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/term/usecase/DeleteTermUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/term/usecase/DeleteTermUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/term/usecase/DeleteTermUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/term/usecase/DeleteTermUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/term/usecase/RetrieveTermUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/term/usecase/RetrieveTermUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/term/usecase/RetrieveTermUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/term/usecase/RetrieveTermUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/term/usecase/SearchTermUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/term/usecase/SearchTermUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/term/usecase/SearchTermUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/term/usecase/SearchTermUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/term/usecase/UpdateTermUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/term/usecase/UpdateTermUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/term/usecase/UpdateTermUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/term/usecase/UpdateTermUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/user/usecase/OnboardingUserUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/user/usecase/OnboardingUserUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/user/usecase/OnboardingUserUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/user/usecase/OnboardingUserUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/user/usecase/WithdrawUserUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/user/usecase/WithdrawUserUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/user/usecase/WithdrawUserUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/user/usecase/WithdrawUserUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/vocabulary/usecase/CreateVocabularyUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/vocabulary/usecase/CreateVocabularyUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/vocabulary/usecase/CreateVocabularyUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/vocabulary/usecase/CreateVocabularyUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/vocabulary/usecase/DeleteVocabularyUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/vocabulary/usecase/DeleteVocabularyUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/vocabulary/usecase/DeleteVocabularyUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/vocabulary/usecase/DeleteVocabularyUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/vocabulary/usecase/RetrieveVocabularyUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/vocabulary/usecase/RetrieveVocabularyUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/vocabulary/usecase/RetrieveVocabularyUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/vocabulary/usecase/RetrieveVocabularyUseCaseTest.java diff --git a/api/src/test/java/vook/server/api/web/vocabulary/usecase/UpdateVocabularyUseCaseTest.java b/server/api/src/test/java/vook/server/api/web/vocabulary/usecase/UpdateVocabularyUseCaseTest.java similarity index 100% rename from api/src/test/java/vook/server/api/web/vocabulary/usecase/UpdateVocabularyUseCaseTest.java rename to server/api/src/test/java/vook/server/api/web/vocabulary/usecase/UpdateVocabularyUseCaseTest.java diff --git a/api/src/test/java/vook/server/learningtest/StringTest.java b/server/api/src/test/java/vook/server/learningtest/StringTest.java similarity index 100% rename from api/src/test/java/vook/server/learningtest/StringTest.java rename to server/api/src/test/java/vook/server/learningtest/StringTest.java diff --git a/api/src/test/resources/application.yml b/server/api/src/test/resources/application.yml similarity index 100% rename from api/src/test/resources/application.yml rename to server/api/src/test/resources/application.yml diff --git a/api/src/test/resources/db/conf/my.cnf b/server/api/src/test/resources/db/conf/my.cnf similarity index 100% rename from api/src/test/resources/db/conf/my.cnf rename to server/api/src/test/resources/db/conf/my.cnf diff --git a/server/api/src/test/resources/init/demo.tsv b/server/api/src/test/resources/init/demo.tsv new file mode 100644 index 00000000..56ed03b0 --- /dev/null +++ b/server/api/src/test/resources/init/demo.tsv @@ -0,0 +1,76 @@ +term synonyms meaning +SDK Software Development Kit 특정 플랫폼이나 운영체재를 위한 앱을 만드는데 필요한 도구와 코드 모음 SDK는 앱 개발을 쉽고 빠르게 만드는 도구로 개발자가 처음부터 모든 것을 스스로 구축할 필요가 없어 시간과 노력을 절약할 수 있습니다. 예) 개발자가 지도를 앱에 추가하고 싶다면 구글 지도 SDK를 사용할 수 있습니다. 이 SDK에는 지도 표시, 사용자 위치 추적, 경로 검색 등의 기능을 위한 코드와 도구가 포함되어 있습니다. +API Application Programming Interface 프로그램이 서로 통신하고 협력할 수 있는 필수적인 연결 도구 API는 크게 데이터 공유, 기능 활용, 시스템 통합의 역할을 수행합니다. 데이터 공유 : 다른 프로그램의 데이터를 제공합니다. 가령, 날씨 앱은 API로 기상청의 날씨 데이터를 가져올 수 있습니다. 기능 활용 : 다른 프로그램의 기능을 활용할 수 있도록 합니다. 가령, 음악 앱은 API로 스포티파이 등의 음악 스트리밍 서비스의 음악을 재생할 수 있습니다. 시스템 통합 : 서로 다른 시스템을 연결해 함께 작동하도록 합니다. 가령, 온라인 쇼핑몰은 API로 주문 처리, 결제 처리 및 배송 추적을 위한 다른 시스템과 통합할 수 있습니다. +IDE Integrated Development Environment 통합 개발 환경의 약자로 개발자가 소프트웨어를 빠르고 쉽게 개발하도록 돕는 도구 IDE는 코딩, 컴파일, 디버깅 및 테스트 등 소프트웨어 개발 프로세스의 모든 단계를 위한 다양한 기능을 제공합니다. +In-app browser 인앱 브라우저 모바일 앱 혹은 데스크톱 앱 내 내장된 웹 브라우저 별도의 웹 브라우저 앱을 실행하지 않아도 앱에서 웹페이지를 볼 수 있도록 합니다. +External browser 익스터널 브라우저 익스터널 브라우저는 별도의 앱으로 설치되는 웹 브라우저입니다. 대표적으로 크롬, 사파리, 파이어폭스, 엣지 등이 있습니다. +CDC Change Data Capture 데이터베이스에 변경된 데이터를 실시간으로 추적하고 캡처하는 기술 데이터베이스에 삽입, 수정, 삭제 등의 변경 작업이 발생할 때마다 해당 변경사항을 기록하고 다른 시스템이나 프로세스에 알려줍니다. CDC는 데이터베이스의 로그 파일을 모니터링하거나 트리거를 사용해 데이터 변경사항을 감지합니다. 변경사항이 감지되면 CDC는 해당 변경 사항을 메시지 형식으로 포장하고 이를 큐에 저장합니다. +Streaming 스트리밍 미디어 파일을 인터넷을 통해 실시간으로 전송하고 재생하는 기술 이전에는 음악이나 영상을 다운로드한 후에 재생할 수 있었다면 스트리밍 기술로 파일을 다운로드하지 않고도 바로 듣거나 재생할 수 있게 되었습니다. 스트리밍에는 라이브 스트리밍과 온디맨드 스트리밍으로 나눌 수 있습니다. 라이브 스트리밍은 실시간으로 방송하고 시청하는 방식이며, 온디맨드 스트리밍은 이미 녹화된 음악, 동영상, 게임 등을 선택해 시청하는 방식입니다. +컴파일러 Compiler 개발자가 작성한 소스 코드를 컴퓨터가 이해하고 실행할 수 있는 기계어로 변환하는 소프트웨어 도구 컴파일러는 대표적으로 개발자의 소스 코드를 읽고 분석하며 소스 코드의 문법적 오류를 확인하고 오류 메시지를 출력합니다. 또한 생성된 기계어를 실행 가능한 파일 형식으로 저장합니다. +클라이언트 Client 클라이언트는 사용자 컴퓨터에 설치된 소프트웨어로 서버에 요청을 보내고 서버로부터 응답을 받습니다. 웹 브라우저, 이메일 클라이언트, 파일 공유 프로그램 등이 클라이언트에 속합니다. +서버 Server 서버는 네트워크에 연결된 컴퓨터로 클라이언트의 요청을 받아 처리하고 결과를 응답으로 보냅니다. 웹 서버, 데이터 베이스 서버, 메일 서버 등이 서버에 속합니다. +프론트엔드 Front-end 사용자가 직접 보고 상호 작용하는 웹페이지의 눈에 보이는 부분을 담당합니다. 웹 브라우저에서 보이는 모든 요소 (텍스트, 이미지, 영상, 버튼 등)와 사용자의 상호 작용(클릭, 스크롤, 입력)이 프론트엔드에 속합니다. +백엔드 Back-end 사용자가 직접 볼 수 없는 웹페이지의 서버를 담당합니다. 데이터베이스 관리, 서버 로직 처리, 사용자 인증, 보안 등 웹페이지의 핵심 기능을 구현합니다. +디버그 Debug 프로그램에서 발생하는 오류나 문제를 찾아 해결하는 과정 디버깅은 프로그램의 품질을 높이고 사용자에게 안정적인 경험을 제공합니다. 디버깅 과정에서 발생하는 오류를 정확히 재현해보고 코드를 분석해 원인을 파악합니다. 오류의 원인을 파악한 후 코드를 수정하여 오류를 해결하고 테스트를 통해 오류가 해결되었는지 확인합니다. 해결 후에는 디버깅 과정에서 발생한 오류, 오류 원인, 해결 방법 등을 문서화합니다. +빌드 Build 소스 코드를 실행 가능한 파일로 변환하는 과정 먼저 컴파일러로 소스 코드를 기계어로 변환합니다. 컴파일된 객체 파일을 연결하고 의존하는 라이브러리를 추가해 실행 가능한 파일을 만듭니다. 실행 가능한 파일과 기타 필요한 파일을 하나의 패키지로 묶습니다. 컴파일은 소스 코드를 기계어로 변환하는 과정이며 빌드 과정의 한 단계인 반면, 빌드는 소스 코드를 실행 가능한 파일로 변환하는 전체적인 과정을 의미합니다. +배포 Deployment 완성된 코드를 실제 사용 환경에 설치하고 실행 가능한 형태로 만드는 과정 배포 방법에는 수동 배포, 자동 배포, 컨테이너 배포 등이 있습니다. 수동 배포는 개발자가 직접 서버에 연결해 배포 작업을 수행하는 방식입니다. 자동 배포는 CI/CD 도구를 사용해 배포 과정을 자동화 하는 방식입니다. 컨테이너 배포는 Docker와 같은 컨테이너 기술을 사용해 배포하는 방식입니다. +반응형 웹 Responsive Website 웹사이트가 다양한 기기의 화면 크기와 해상도에 맞게 자동으로 디자인 및 레이아웃을 조정하도록 돕는 웹 디자인 접근 방식입니다. +SSO Single Sign On 사용자가 여러 시스템이나 애플리케이션에 한 번의 로그인 만으로 액세스할 수 있도록 하는 인증 방식 사용자는 시스템마다 별도 계정을 만들고 로그인 할 필요 없이 하나의 아이디와 비밀번호만 사용해 여러 시스템에 로그인할 수 있습니다. SSO는 다음과 같은 단계를 거쳐 작동합니다. 1. 사용자는 하나의 시스템에 로그인합니다. 2. 사용자 인증 정보는 중앙 인증 서버에 전송됩니다. 3. 중앙 인증 서버는 사용자 인증 정보를 검사하고 유효하면 인증 토큰을 생성합니다. 4. 인증 토큰은 사용자의 브라우저에 저장됩니다. 5. 사용자가 다른 시스템에 액세스하려고 할 때 브라우저는 저장된 인증 토큰을 자동으로 전송합니다. 6. 중앙 인증 서버는 인증 토큰을 검사하고 유효하면 사용자를 자동으로 로그인시킵니다. +SaaS Software as a Service 소프트웨어를 서비스로 제공하는 모델 SaaS 서비스 제공업체는 웹 브라우저를 통해 사용자가 액세스 할 수 있는 소프트웨어 애플리케이션을 개발, 운영 및 유지 관리합니다. 사용자는 별도의 소프트웨어를 설치하거나 하드웨어를 구매할 필요 없이 인터넷 연결만 있으면 서비스를 이용할 수 있습니다. +PasS Platform as a Service 소프트웨어 개발 및 배포를 위한 플랫폼을 서비스로 제공하는 모델 PaaS 플랫폼은 개발자들이 웹 애플리케이션을 구축, 테스트, 배포 및 관리하는 데 필요한 모든 기능과 도구를 제공합니다. 개발자는 PaaS 플랫폼을 사용하여 핵심적인 개발 작업에 집중할 수 있으며, 서버 관리, 운영 체제 관리, 네트워킹 등의 인프라 관리 작업은 PaaS 플랫폼 제공업체가 담당합니다. +IaaS Infrastructure as a Service 컴퓨팅, 스토리지, 네트워킹과 같은 기반 IT 인프라를 서비스로 제공하는 모델 IaaS 서비스 제공업체는 사용자에게 가상 머신, 서버, 스토리지, 네트워킹 장비 등을 제공하며, 사용자는 이러한 자원을 자유롭게 사용하여 원하는 시스템 및 애플리케이션을 구축할 수 있습니다. +SOAP API Simple Object Access Protocol API 웹 서비스를 위한 표준 프로토콜 XML 기반 메시지 형식을 사용하여 네트워크를 통해 분산된 응용 프로그램 간 통신을 지원합니다. SOAP API는 표준화된 웹 서비스 프로토콜이지만, 복잡하고 느리고 비효율적인 단점이 있습니다. 이러한 단점을 해결하기 위해 REST API, JSON API와 같은 다른 웹 서비스 프로토콜들이 등장했습니다. +RPC Remote Procedure Call 네트워크를 통해 원격 시스템에 있는 함수를 마치 로컬 시스템에 있는 함수처럼 호출하는 기술 개발자는 호출되는 함수가 다른 시스템에 있는지 여부를 확인하지 않고 함수를 호출할 수 있습니다. RPC는 분산 시스템에서 서로 다른 시스템 간 통신과 자원 공유를 용이하게 만들며, 클라이언트 - 서버 애플리케이션 개발에 많이 사용됩니다. +웹소캣 Websocket API 웹 클라이언트와 웹 서버 간에 지속적인 양방향 실시간 통신을 가능하게 하는 API 기존의 HTTP 기반 웹 요청과 달리 WebSocket은 한 번의 TCP 연결을 통해 클라이언트와 서버 간에 지속적으로 데이터를 주고받을 수 있으므로, 채팅, 게임, 실시간 데이터 갱신 등 실시간으로 데이터 송수신이 필요한 애플리케이션에 적합합니다. +REST API Representational State Transfer API REST 아키텍처 스타일의 디자인 원칙을 준수하는 API REST API를 RESTful API라고 불리기도 합니다. REST API는 일관되고 이해하기 쉬운 인터페이스를 제공하며, 다양한 플랫폼과 프로그래밍 언어에서 쉽게 사용할 수 있는 장점이 있습니다. REST API는 HTTP method를 사용하여 자원에 대한 작업을 수행합니다. 일반적으로 사용되는 HTTP method는 다음과 같습니다. GET: 자원을 조회합니다. POST: 자원을 생성합니다. PUT: 자원을 업데이트합니다. DELETE: 자원을 삭제합니다. +HTTP Hypertext Transfer Protocol//n하이퍼텍스트 전송 프로토콜 웹 브라우저와 웹 서버 간의 통신을 위한 기본 프로토콜 웹사이트 방문 시 사용자가 입력한 URL을 요청하고, 웹 서버는 요청에 맞는 웹 페이지나 다른 데이터를 응답으로 전송하는 데 사용됩니다. HTTP는 기본적으로 데이터를 평문으로 전송하기 때문에 도청이나 위변조 위험이 있어 최근에는 HTTPS를 사용합니다. +HTTPS Hypertext Transfer Protocol Secure HTTP에 SSL/TLS 프로토콜을 추가하여 안전하게 데이터를 전송하도록 보안 강화한 프로토콜입니다. HTTPS는 웹 브라우저와 웹 서버 간 모든 통신을 암호화해 도청이나 위변조를 방지합니다. 웹 서버의 신원을 인증해 위조 사이트로부터 사용자를 보호하며, 데이터 전송 과정에서 데이터가 변경되지 않았는지 확인합니다. +SSL Secure Sockets Layer//n보안 소켓 계층 웹 브라우저와 웹 서버 간의 통신을 암호화하여 보안하는 프로토콜 SSL은 현재 TLS(Transport Layer Security)로 이름이 변경되었지만, 여전히 SSL이라는 용어가 널리 사용되고 있습니다. +TLS 전송 계층 보안 인터넷 상의 두 시스템 간의 통신을 보호하는 보안 프로토콜 데이터 암호화, 신원 인증, 데이터 무결성 보장 기능을 제공하여 사용자의 개인정보, 로그인 정보, 금융 정보 등을 안전하게 보호합니다. 이전에 사용되었던 SSL(Secure Sockets Layer) 프로토콜의 후속 버전입니다. +프레임워크 Framework 소프트웨어 개발 과정을 돕는 도구와 라이브러리의 집합 프레임워크는 개발자가 애플리케이션의 기본 구조 및 핵심 기능을 빠르고 쉽게 구축할 수 있도록 기본적인 뼈대를 제공합니다. 대표적으로 웹에선 Django, Ruby on Rails 등이 있으며, 모바일에선 React Native, Flutter 등이 있습니다. +라이브러리 Library 라이브러리는 개발자가 특정 기능이나 작업을 수행할 수 있도록 재사용 가능한 코드 모듈을 제공합니다. 가령 NumPy, Pandas 등 데이터 처리 관련 라이브러리는 복잡한 데이터 분석 및 처리 작업을 수행하는 데 도움을 줍니다. +플러그인 Plug-in 기존 소프트웨어에 새로운 기능을 추가하거나 기존 기능을 확장하는 소프트웨어 구성 요소 일반적으로 독립적인 프로그램으로 작동하며, 호환되는 호스트 프로그램에 설치해야 합니다. 플러그인은 다양한 분야에서 사용되며, 웹 브라우저, 그래픽 편집 프로그램, 비디오 편집 프로그램, 게임 엔진 등에서 흔히 볼 수 있습니다. +파라미터 인자//nParameter 함수는 특정 작업을 수행하도록 설계된 코드 블록입니다. 함수를 호출할 때 원하는 결과를 얻도록 함수에 데이터를 전달해야 합니다. 이 데이터를 파라미터라고 부릅니다. +Argument 인자값 인자값은 함수 호출 시 실제 값을 의미하며, 파라미터에 전달됩니다. 인자값은 다양한 형태의 데이터, 숫자, 문자열, 리스트, 객체 등을 포함할 수 있습니다. 함수는 전달된 인자값을 사용하여 계산을 수행하거나 작업을 처리합니다. +AJAX Asynchronous Javascript and XML 비동기 JavaScript 및 XML의 약자로, 웹 페이지를 부분적으로 다시 로드하지 않고도 서버와 데이터를 주고받을 수 있는 웹 개발 기술 AJAX를 사용하면 사용자가 웹 페이지를 새로고침하지 않고도 데이터를 업데이트하고 새로운 콘텐츠를 로드할 수 있어 웹사이트의 사용자 경험을 크게 향상시킬 수 있습니다. 대표적으로 검색창에 입력하는 단어에 대한 자동 완성 기능, 무한 스크롤, 실시간 데이터 업데이트 등에 활용됩니다. +멀티스레드 Multi-thread 하나의 프로그램에서 동시에 여러 개의 작업을 수행하는 프로그래밍 방식입니다. 멀티스레드를 사용하면 컴퓨터의 여러 개의 CPU 코어를 효율적으로 활용하여 프로그램 성능을 향상시킬 수 있습니다. +렌더링 Rendering 렌더링은 2D 또는 3D 모델을 기반으로 이미지 또는 영상 컴퓨터 그래픽스, 영화 제작, 비디오 게임, 건축 시각화 등 다양한 분야에서 활용됩니다. 렌더링 과정은 모델 정보를 시각적 표현으로 변환하는 복잡한 계산 과정을 포함하며, 빛, 색상, 질감, 그림자 등 다양한 요소를 고려하여 현실감 넘치는 이미지 또는 영상을 생성합니다. +샌드박스 SandBox 실제 환경에 영향을 미치지 않고 새로운 소프트웨어나 기능을 테스트할 수 있는 가상의 공간입니다. 샌드박스는 개발자가 버그를 찾고 코드를 개선할 수 있는 안전한 환경을 제공합니다. +데이터 레이크 Data lake 구조화된 또는 반구조화된, 혹은 구조화되지 않은 방대한 양의 데이터를 저장하는 저장소 데이터 레이크는 기존의 데이터 웨어하우스와는 다릅니다. 데이터 웨어하우스는 일반적으로 미리 정의된 스키마를 사용하여 구조화된 데이터를 저장하는 반면, 데이터 레이크는 스키마 없이 데이터를 저장할 수 있습니다. 즉, 데이터 레이크에는 모든 유형의 데이터를 저장할 수 있으며, 데이터가 저장된 후에도 데이터 스키마를 변경할 수 있습니다. +데브옵스 DevOps 데브옵스(DevOps)는 소프트웨어 개발(Development)과 운영(Operations)을 하나의 통합된 프로세스로 연결하여 소프트웨어를 빠르게, 안정적으로, 그리고 효율적으로 제공하는 문화와 관행들의 집합 데브옵스는 개발팀과 운영팀 간의 협업을 강조하며, 자동화, 지속적인 통합 및 배포, 모니터링 등을 통해 소프트웨어 개발 및 제공 프로세스를 개선하는 데 중점을 둡니다. +CI/CD Continuous Integration/Continuous Delivery//n지속적인 통합/지속적인 배포 소프트웨어 개발 프로세스를 자동화하여 소프트웨어를 빠르고 안정적으로 제공하는 방법 CI/CD는 다음 두 단계로 구성됩니다. - 지속적인 통합(Continuous Integration, CI): 개발자가 코드를 변경할 때마다 코드를 자동으로 통합하고 테스트하는 프로세스입니다. CI는 개발 중에 발생하는 버그를 빠르게 발견하고 해결하는 데 도움이 됩니다. - 지속적인 배포(Continuous Delivery, CD): 테스트를 통과한 코드를 자동으로 배포 환경에 배포하는 프로세스입니다. CD는 소프트웨어를 빠르게 출시하고 업데이트하는 데 도움이 됩니다. +파싱 Parsing 컴퓨터 과학에서 특정 형식으로 구성된 데이터를 분석하고 해석하는 과정 파싱은 주로 텍스트 기반 데이터, 프로그래밍 언어 소스 코드, XML 문서 등을 처리하는 데 사용됩니다. 파싱 과정에서 데이터의 구조를 이해하고 의미 있는 정보를 추출합니다. +핑 Ping 컴퓨터 네트워크에서 두 장치 간의 연결성을 테스트하는 데 사용되는 도구 핑은 다음과 같은 다양한 상황에서 사용됩니다. - 네트워크 문제 진단: 네트워크 연결이 끊겨 있거나 속도가 느린 경우 핑을 사용하여 문제의 원인을 파악할 수 있습니다. - 웹 사이트 성능 테스트: 웹 사이트에 연결하는 데 걸리는 시간을 측정하는 데 핑을 사용할 수 있습니다. - 새로운 네트워크 장치 설정 확인: 새로 설치한 네트워크 장치가 올바르게 작동하는지 확인하는 데 핑을 사용할 수 있습니다. +SRE Site Reliability Engineering 소프트웨어 시스템의 안정성, 확장성, 및 성능을 유지하는 것을 담당하는 엔지니어링 분야 SRE는 전통적인 소프트웨어 개발 및 운영 팀의 역할을 결합하여 소프트웨어를 서비스로 제공하는 데 필요한 모든 측면을 관리합니다. +SSH Secure Shell Protocol 네트워크를 통해 두 컴퓨터 간의 안전한 연결을 제공하는 프로토콜 SSH는 다음과 같은 다양한 목적으로 사용됩니다. - 원격 컴퓨터 관리: 시스템 관리자는 SSH를 사용하여 원격 컴퓨터에 로그인하고 관리 작업을 수행할 수 있습니다. - 파일 전송: 사용자는 SSH를 사용하여 두 컴퓨터 간에 파일을 안전하게 전송할 수 있습니다. - 애플리케이션 실행: 사용자는 SSH를 사용하여 원격 컴퓨터에서 애플리케이션을 실행할 수 있습니다. - 포트 포워딩: 사용자는 SSH를 사용하여 한 컴퓨터의 포트를 다른 컴퓨터의 포트로 전달할 수 있습니다. +성능 테스트 BMT//nBench Marking Test 한 가지 시스템이나 제품의 성능을 객관적으로 측정하고 비교하기 위한 테스트 BMT는 일반적으로 동일한 조건에서 서로 다른 시스템 또는 제품을 테스트하여 어떤 시스템 또는 제품이 더 우수한 성능을 제공하는지를 확인하는 데 사용됩니다. +gRPC Google RPC//nGoogle Remote Procedure Call RPC(Remote Procedure Call)는 네트워크를 통해 원격 시스템에 있는 프로시저를 호출하는 기술입니다. RPC는 마치 로컬 시스템에서 함수를 호출하는 것처럼 원격 시스템의 프로시저를 호출할 수 있도록 해줍니다. gRPC는 Google에서 개발한 오픈 소스 RPC 프레임워크입니다. +NAS Network Attached Storage 네트워크를 통해 여러 사용자가 파일 저장 및 공유를 할 수 있도록 하는 장치 NAS는 다양한 용도로 사용됩니다. 개인 용도로는 사진, 음악, 비디오 등의 개인 파일을 저장하고 공유하는 데 사용할 수 있습니다. 사업 용도로는 문서, 스프레드시트, 프레젠테이션과 같은 업무 파일을 저장하고 공유하는 데 사용할 수 있습니다. 또한 NAS는 데이터 백업, 파일 스트리밍, 미디어 서버 등으로도 사용할 수 있습니다. +CDN Contents Delivery Network 웹 콘텐츠를 사용자에게 더 빠르고 안정적으로 제공하기 위해 지리적으로 분산된 네트워크를 사용하는 기술 웹사이트, 이미지, 동영상, 스트리밍 미디어 등 다양한 콘텐츠를 빠르게 전송하는 데 효과적으로 사용됩니다. +DNS Domain Name System 인터넷 주소록이라고도 불리는 시스템으로, 도메인 이름(예: www.example.com)을 IP 주소(예: 192.0.2.44)로 변환하는 역할을 합니다. 쉽게 말해, 사람이 쉽게 기억할 수 있는 도메인 이름을 컴퓨터가 이해할 수 있는 IP 주소로 변환하는 시스템이라고 볼 수 있습니다. +엔드포인트 Endpoint 네트워크에서 데이터를 주고받을 수 있는 논리적 또는 물리적 위치 간단히 말해서, 엔드포인트는 네트워크 상에서 연결하고 상호 작용할 수 있는 문과 같습니다. 각 엔드포인트는 고유한 IP 주소 또는 식별자를 가지고 있으며, 네트워크를 통해 다른 엔드포인트와 통신할 수 있습니다. +Request 요청 엔드포인트가 다른 엔드포인트에게 데이터나 작업을 수행하도록 요청하는 메시지 +Response 응답 요청에 대한 응답으로 엔드포인트에서 다른 엔드포인트로 전송하는 메시지 +JSON JavaSript Object Notation Javascript에서 사용하는 객체 정의 방법 +포트 Port 컴퓨터 또는 네트워크 장치에서 특정 애플리케이션이나 서비스를 식별하는 데 사용되는 논리적 번호 포트는 여러 애플리케이션이 동시에 같은 컴퓨터에서 실행될 수 있도록 하는 가상 통로와 같습니다. 각 포트는 고유한 번호를 가지고 있으며, 0에서 65535까지의 범위를 사용할 수 있습니다. +프로토콜 Protocol 두 시스템 간의 통신 방식을 정의하는 규칙 집합 프로토콜은 두 시스템이 서로 어떻게 대화해야 하는지에 대한 약속과 같습니다. 프로토콜에선 전송되는 데이터 형식과 데이터 전송 방식 그리고 오류 처리에 대해 정의합니다. +로드 밸런싱 Load Balancing 네트워크 트래픽을 여러 서버에 분산하여 처리하는 기술 로드 밸런싱을 통해 서버 부하를 줄이고, 성능을 향상시키며, 사용자 가용성을 높일 수 있습니다. 가령 온라인 쇼핑몰의 경우 높은 트래픽을 처리하고 고객에게 빠른 응답 속도를 제고하기 위해 사용합니다. 온라인 게임의 경우 많은 플레이어를 동시에 처리하고 게임 지연을 줄이기 위해 사용합니다. +가상화 Virtualization 하나의 컴퓨터를 여러 개의 가상 컴퓨터처럼 사용할 수 있도록 하는 기술 +데이터베이스 Database 구조화된 형태로 데이터를 저장하고 관리하는 시스템 데이터를 체계적으로 정리하고, 쉽게 찾고 사용할 수 있도록 하는 도구라고 생각하면 됩니다. +테이블 Table 테이블은 행과 열로 구성된 데이터 구조로, 데이터베이스에서 데이터를 저장하는 기본 단위 각 행은 하나의 데이터 레코드를 나타내고, 각 열은 레코드의 특정 속성을 나타냅니다. 테이블은 마치 스프레드시트와 유사한 형태로 데이터를 보여주고, 행과 열을 사용하여 원하는 데이터를 쉽게 찾고 조작할 수 있도록 합니다. +기본 키 Primary Key 테이블 내의 각 레코드를 고유하게 식별하는 열 또는 열 집합 다른 열의 값이 중복될 수 있는 반면, 기본 키 값은 항상 고유하고 null 값을 허용하지 않습니다. 기본 키는 데이터 무결성을 유지하고 중복된 데이터를 방지하는 데 중요한 역할을 합니다. +외래 키 Foreign Key 한 테이블의 열을 다른 테이블의 기본 키 열과 연결하는 관계 외래키는 두 테이블 간의 데이터 관계를 정의하고 데이터 무결성을 유지하는 데 도움이 됩니다. 예를 들어, '고객' 테이블에 '주소' 테이블의 외래키 열이 있다면, '고객' 테이블의 각 레코드는 '주소' 테이블의 고유한 레코드를 참조하게 됩니다. +인덱스 Index 테이블의 특정 열에 대한 검색 속도를 향상시키는 데이터 구조 책의 색인과 유사하게, 인덱스는 데이터베이스 시스템이 테이블 내의 특정 레코드를 빠르게 찾도록 도와줍니다. 자주 검색되는 열에 인덱스를 생성하면 데이터 검색 속도를 크게 향상시킬 수 있으며, 데이터베이스 성능을 개선하는 데 효과적인 방법입니다. +SQL Structured Query Language 관계형 데이터베이스에서 데이터를 조작하는 표준 언어 데이터베이스에 데이터를 저장하고, 검색하고, 삭제하고, 수정하는 데 사용하는 데이터베이스 프로그래밍 언어라고 생각하면 됩니다. +정규화 Normalization 데이터베이스의 데이터 구조를 체계적으로 조직하여 데이터 중복을 최소화하고, 데이터 무결성을 유지하며, 데이터베이스의 효율성을 높이는 프로세스 데이터베이스 정규화는 데이터 중복을 최소화하고 데이터 무결성을 유지하는 목적으로 사용됩니다. 또한 데이터베이스 구조를 최적화해 데이터 검색 및 조작 속도를 높이고 데이터베이스 관리 작업을 용이하게 합니다. +트랜잭션 Transaction 데이터베이스와 같은 시스템의 상태를 일관되게 변경하는 작업 단위 트랜잭션은 ACID 특성을 만족하도록 설계되어 데이터 무결성을 유지합니다. ACID는 트랜잭션의 핵심 특성을 나타내는 약자입니다. - 원자성 (Atomicity): 트랜잭션은 하나의 작업 단위로 실행되며, 트랜잭션이 완료되거나 실패할 때까지 부분적인 작업이 수행되지 않습니다. - 일관성 (Consistency): 트랜잭션이 완료되면 데이터베이스는 항상 일관된 상태를 유지합니다. 트랜잭션 중간에 데이터베이스 상태가 변경되지 않습니다. - 격리성 (Isolation): 동시에 실행되는 여러 트랜잭션은 서로 영향을 미치지 않습니다. 각 트랜잭션은 서로 독립적으로 실행되는 것처럼 작동합니다. - 지속성 (Durability): 트랜잭션이 성공적으로 완료되면, 그 결과는 영구적으로 저장됩니다. 시스템 장애나 데이터 손실에도 영향을 받지 않습니다. +컨벤션 Convention 일관되고 읽기 쉬운 코드 베이스 유지를 위해 개발자가 따르는 합의된 규칙 +클래스 Class 객체의 청사진 역할을 하는 설계 요소 붕어빵 틀 자체를 클래스라고 생각하면 됩니다. 붕어빵 틀은 붕어빵의 속성(팥, 깨, 모양 등)과 행동(먹는 것)을 정의하고 있으며, 이 틀을 사용하여 여러 개의 붕어빵(객체)를 만들 수 있습니다. +객체 Object 데이터와 그 데이터를 처리하는 메서드를 묶어 놓은 기본 단위 붕어빵 틀을 이용하여 만든 붕어빵 하나하나를 객체라고 생각하면 됩니다. 각 붕어빵은 틀에서 정의된 속성(팥, 깨, 모양 등)과 행동(먹는 것)을 가지고 있습니다. +객체 지향 프로그래밍 OOP 객체라는 기본 단위를 사용하여 프로그램을 설계하고 작성하는 프로그래밍 패러다임 객체는 데이터(속성)와 행동(메서드)을 가지고 있으며, 서로 상호작용하여 프로그램을 구성합니다. +CSS Cascading Style Sheets HTML 문서의 스타일을 정의하는 데 사용되는 스타일 시트 언어 HTML 문서가 웹 페이지의 구조를 담당한다면, CSS는 웹 페이지의 디자인을 담당합니다. +레거시 Regacy 오래된 기술로 개발되었지만, 여전히 사용되고 있는 컴퓨터 시스템, 소프트웨어, 하드웨어를 의미합니다. +트러블 슈팅 Trouble Shooting 시스템이나 장치에서 발생하는 문제를 진단하고 해결하는 과정 트러블 슈팅의 경우 문제의 근본 원인을 파악하고 해결 방안을 모색하는 데 초점을 맞춥니다. 문제의 증상만 해결하는 것이 아니라, 발생 원인을 제거하여 동일한 문제가 다시 발생하지 않도록 방지하는 것을 목표로 합니다. 반면 디버깅 코드는 시스템에서 오류를 찾고 수정하는 데 초점을 맞춥니다. 코드 실행 과정을 단계별로 검사하고, 오류가 발생하는 부분을 정확히 식별하여 코드를 수정하거나 버그를 제거하는 것을 목표로 합니다. +네이티브 앱 Native App 특정 모바일 운영 체제(예: iOS, Android)를 위해 자체 프로그래밍 언어(예: Swift, Java)로 개발됩니다. 일반적으로 하이브리드 앱보다 빠르고 응답성이 뛰어납니다. 네이티브 앱은 운영 체제와 직접 통합되기 때문에 하드웨어 가속 및 기타 최적화 기능을 활용할 수 있습니다. +하이브리드 앱 Hibrid App 웹 기술(예: HTML, CSS, JavaScript)을 사용하여 빌드되고, 기본적으로 웹 뷰 앱으로 작동하며, 운영 체제별 래퍼를 통해 각 플랫폼에 맞게 패키징됩니다. 웹 기술 기반으로 개발되었기 때문에 플랫폼별 업데이트나 버그 수정 없이도 유지 관리가 비교적 용이합니다. +스플래시 Splash 컴퓨터 프로그램, 웹사이트 또는 모바일 앱을 시작할 때 잠깐 나타나는 로고나 이미지 로딩 화면이라고도 불리며, 프로그램이나 앱이 로드되고 사용자 인터페이스가 준비될 때까지 대기 시간을 채우는 역할을 합니다. diff --git a/api/src/test/resources/migrate/sql b/server/api/src/test/resources/migrate/sql similarity index 100% rename from api/src/test/resources/migrate/sql rename to server/api/src/test/resources/migrate/sql diff --git a/api/src/test/resources/tsvreader/test.tsv b/server/api/src/test/resources/tsvreader/test.tsv similarity index 100% rename from api/src/test/resources/tsvreader/test.tsv rename to server/api/src/test/resources/tsvreader/test.tsv diff --git a/server/build.gradle b/server/build.gradle new file mode 100644 index 00000000..63aa5e58 --- /dev/null +++ b/server/build.gradle @@ -0,0 +1,41 @@ +plugins { + id 'java' + id 'org.springframework.boot' version '3.3.1' + id 'io.spring.dependency-management' version '1.1.5' +} + +subprojects { + apply plugin: 'java' + apply plugin: 'org.springframework.boot' + apply plugin: 'io.spring.dependency-management' +} + +allprojects { + group = 'vook' + version = '0.0.1-SNAPSHOT' + + java { + toolchain { + languageVersion = JavaLanguageVersion.of(21) + } + } + + configurations { + compileOnly { + extendsFrom annotationProcessor + } + } + + repositories { + mavenCentral() + } + + bootJar { + destinationDirectory = file(rootDir.absolutePath + '/jar') + archiveFileName = "${project.name}.jar" + } + + tasks.named('test') { + useJUnitPlatform() + } +} diff --git a/api/gradle/wrapper/gradle-wrapper.jar b/server/gradle/wrapper/gradle-wrapper.jar similarity index 100% rename from api/gradle/wrapper/gradle-wrapper.jar rename to server/gradle/wrapper/gradle-wrapper.jar diff --git a/api/gradle/wrapper/gradle-wrapper.properties b/server/gradle/wrapper/gradle-wrapper.properties similarity index 100% rename from api/gradle/wrapper/gradle-wrapper.properties rename to server/gradle/wrapper/gradle-wrapper.properties diff --git a/api/gradlew b/server/gradlew similarity index 100% rename from api/gradlew rename to server/gradlew diff --git a/api/gradlew.bat b/server/gradlew.bat similarity index 100% rename from api/gradlew.bat rename to server/gradlew.bat diff --git a/server/settings.gradle b/server/settings.gradle new file mode 100644 index 00000000..d62455c6 --- /dev/null +++ b/server/settings.gradle @@ -0,0 +1,3 @@ +rootProject.name = 'server' + +include 'api'