java
- JAVA 구글 GCP credential 가져오는 방법 2017.07.28
- Sping Boot Maven 프로젝트 모듈 가이드 2017.06.29
- aws sdk maven 설정 2017.06.28
JAVA 구글 GCP credential 가져오는 방법
Sping Boot Maven 프로젝트 모듈 가이드
공통 모듈 형상 참고 사이트
https://github.com/DISID/disid-proofs/tree/master/spring-boot-multimodule
부모가 되는 spring-boot-multimodule 프로젝트의 pom.xml 내부를 확인 하면 모듈 들이 존재 한다.
<modules>
<module>model</module>
<module>repository</module>
<module>service-api</module>
<module>service-impl</module>
<module>application</module>
</modules>
해당 모듈들은 각 하위 프로젝트의 이름들이 명시 되어 있어야 한다.
<packaging>pom</packaging>
또한 packaging을 jar가 아닌 pom으로 선언 되어있어야 한다.
하위 프로젝트 application의 pom을 확인하면
<parent>
<groupId>sample.multimodule</groupId>
<artifactId>sample.multimodule</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<parent> 태그 안에 부모가 되는 프로젝트의 groupId, artifactId, version을 선언 해야 한다.
자기 자신은의
<packaging>war</packaging>
packaging은 배포 파일 >> war, jar로 선언해야 한다.
저의 경우 공통 컨트롤러 프로젝트 하나에 여러개의 서비스 프로젝트를 모듈화 하였는데 만약 core 프로젝트가 필요하다면
<!-- Project modules -->
<dependency>
<groupId>sample.multimodule</groupId>
<artifactId>sample.multimodule.service.impl</artifactId>
<version>${project.version}</version>
</dependency>
core 프로젝트를 dependency하여 주면 된다.
최종적으로 선언하고 maven 빌드 해주시면 각 프로젝트끼리 배포 된 jar, war파일을 바라보며 서비스가 실행 된다.
pom.xml에서의 다른 패키지들과 플러그인들을 선언 할 경우 가장 최상위 부모 pom에 선언하면 다른 프로젝트는 부모의 라이브러리를 참조 한다.
aws sdk maven 설정
SDK란 무엇인가?
Software Development Kit 의 약자로 API와 비슷한 의미를 가진다.
SDK는 원래 API를 사용하여 프로그램을 개발하는 마이크로소프트사에서 제공하는 윈도우즈용 프로그램 개발킷을 의미
하지만 지금은 의미가 전용되어 API와 거의 같은 뜻으로 쓰인다.
1. AWS SDK Maven
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
<version>1.11.119</version>
</dependency>
<dependency>
<groupId>com.google.code.typica</groupId>
<artifactId>typica</artifactId>
<version>1.3</version>
</dependency>
AWS에서는 하루에 기능이 3개 이상 개발 된다고 한다.
AWS SDK를 가장 최신 버전으로 사용하게 되면 버전이 하나라도 올라 갈 수록 메소드의 기능, 설정 값들이 지속적으로 변경 되기 때문에 이전에 사용했던 메소드나 변수를 사용 못 할 경우가 있다.
가장 최신의 메이저 버전을 선택 후 개발 하는 것이 현명 한 방법인 것 같다.
AWS SDK 깃 주소 https://github.com/aws/aws-sdk-java