티스토리 뷰
Multi Module 이란?
- 필요한 기능별로 Module 을 생성하는 것
- 레고를 조립하듯 필요한 Module을 조립
- N개의 Module이 조립되어있는 프로젝트를 Multi Module 프로젝트라고 부름
- 예를들어 API 서버에서도 DB Entity 가 필요하고 Batch 서버에도 동일한 DB Entity 가 필요한데 중복으로 관리하면 리스크가 늘어남
- 중복된 Entity를 모듈화하여 사용하기 위해 Multi Module 프로젝트를 사용
Exception 핸들링
- 언어 또는 프레임워크에서 발생한 Exception 은 반드시 Custom 하게 Wrapping 하여 처리하여야 함
- @RestControllerAdvice 어노테이션을 사용하여 모든 예외를 해당 클래스에서 클라이언트와 사전에 정의한 값으로 재정의
Multi Module 구조에서 Gradle을 사용한 배포
- Multi Module 구조에서는 원하는 Module을 골라서 빌드, 배포가 가능
Multi Module 프로젝트 생성방법
- 루트 프로젝트 생성 : 라이브러리를 선택하지 않고 껍데기만 있는 루트 프로젝트를 생성한다. src 폴더는 삭제해준다
- 모듈 프로젝트 생성 : 루트 프로젝트에서 오른쪽 마우스 버튼을 클릭하고 Module 프로젝트 생성을 클릭
루트 프로젝트에 모듈 프로젝트 명시 (setting.gradle)
rootProject.name = 'multimodule'
include 'module-common'
include 'multimodule-api'
사용할 모듈 프로젝트 build.gradle 에 import
implementation project(':module-common')
tasks.register("prepareKotlinBuildScriptModel"){}
**-plain.jar 와 **.jar 차이점
- xxx-plain.jar 은 리소스와 클래스 파일만 포함하기 때문에 실행시킬 수 없는 파일
- 빌드된 파일의 위치는 /build/libs 하위에 있음
Profile
- 환경별로 profile 값이 다른 경우
- application-local, application-pdev, application-prod
- java -jar -Dspring.profiles.active=local **-SNAPSHOT.jar
'Spring' 카테고리의 다른 글
Spring Boot 에서 GraphQL 사용하기 (1) (0) | 2022.11.13 |
---|---|
[Spring] MultipartFile를 이용한 스프링 파일 업로드(feat. AWS S3) (0) | 2022.01.27 |
[Spring] Spring Security 프레임워크 (2) : Spring Security 인증인가 동작과정 (0) | 2022.01.20 |
[Spring] Spring Security 프레임워크 (1) (0) | 2022.01.19 |
[Spring] 스프링 MVC와 스프링 MVC 구조 (0) | 2022.01.18 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- ddl-auto
- AWS
- 네이버클라우드
- 프로그래머스
- 파일업로드설정
- spring
- EC2
- Til
- 트랜잭션
- SpringGraphQL
- 람다식
- 기술면접
- TCP
- Oracle
- JPA
- OS
- N+1
- CodeDeploy
- ci/cd
- 트랜잭션격리성
- nginx
- ORA-27125
- Java
- graphql
- db
- 인덱스
- 운영체제
- Travis CI
- SpringSecurity
- level0
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
글 보관함