Spring Boot 의 주요 스타터 프로젝트
아래의 스타터 프로젝트를 추가하면,
스프링 부트 프로젝트에 새로운 의존성이 추가 될때 마다, 의존성 기반으로 Bean을 자동으로 설정함.
아래는 주요 스타터 프로젝트이다.
Starter목록 |
설명 |
비고 |
spring-boot-starter-web |
Spring MVC 기반의 웹 어플리케이션 or RESTful 어플리케이션을 구현하는 Starter Project . - 디폴트, Embed 서블릿 컨테이너로 Tomcat 이 사용됨. |
|
spring-boot-starter-web-services |
XML 기반 웹서비스를 개발하는 Starter Project. |
|
spring-boot-starter-integration |
엔터프라이즈 integration pattern 의 구현을 제공하는 Spring integration framework 를 지원함. |
|
spring-boot-starter-activemq |
Active MQ에서 JMS 를 사용해서 Message-base 통신을 지원함. |
|
spring-boot-starter-test |
JUnit, 모키토, Hamcrest matchers 와 같은 다양한 단위 테스트 framework 를 지원함. |
|
spring-boot-starter-jdbc |
Spring JDBC 사용을 지원함. - 디폴트, Tomcat JDBC Connection Pool 을 구성함. |
|
spring-boot-starter-validation |
JAVA Bean validation API 를 지원함. - 디폴트 구현은 hibernate-validator. |
|
spring-boot-starter-hateoas |
HATEOAS 를 사용하는 RESTful 서비스는 data 뿐만아니라, 현재 context와 관련된 추가 리소스에 대한 링크를 반환함. |
|
spring-boot-starter-websocket |
HTTP 는 무상태임. 웹 소켓을 사용하면, 서버와 브라우저 사이의 연결을 유지할 수 있음. - 즉, 해당스타터를 추가하면, Websocket 을 지원함. |
|
spring-boot-starter-jersey |
JAX-RS 는 REST api 를 개발하는 JAVA EE 표준. Jersey 는 디폴트 구현체. 해당 스타터 프로젝트는 JAX-RS-based REST api 를 빌드하기 위한 기능을 제공함. |
|
spring-boot-starter-aop |
관점지향 프로그래밍 / 고급 관점지향 프로그래밍을 위한 AspectJ에 대한 지원을 제공함. |
|
spring-boot-starter-amqp |
디폴트로 제공하는 RabbitMQ를 사용해 메시지를 AMQP 로 전달함. |
|
spring-boot-starter-security |
Spring Security 를 위한 자동설정을 지원함. |
|
spring-boot-starter |
Spring Boot 어플리케이션의 디폴트 스타터 프로젝트, 자동 설정 및 logging 을 지원함. |
|
spring-boot-starter-data-jpa |
Spring Data JPA를 지원함. - 디폴트 구현체는 hibernate |
|
spring-boot-starter-batch |
Spring Batch 를 사용해 Batch 어플리케이션을 개발할 수 있는 기능을 제공함. |
|
spring-boot-starter-data-rest |
Spring Data REST 를 사용해 REST 서비스 노출을 지원함. |
|
spring-boot-starter-cache |
Spring framework 를 사용한 캐싱에 대한 지원을 해줌. |
|
결론
Spring Boot 스타터 프로젝트를 의존성에 추가하면, 의존성 기반으로 Bean을 자동으로 설정해줌.
오늘도 Spring Boot 스타터 프로젝트에 대한 지식 마술(?) 한가지 획득완료! 감사합니다. ^^
오늘의 명언 한마디
남들과 다르다는 이유만으로 꼭 필요한 사람이 되는 것은 아니다.
하지만 꼭 필요한 사람이 되는 유일한 방법은 남들과 달라지는 것이다.
남들과 다를 것이 없다면, 무수한 사람들 중 한 명일뿐이기 때문이다.
세스 고딘지음, "린치핀:당신은 꼭 필요한 사람인가?" 중에서..
오늘의 영어 한마디
I can't stand this heat.
나는 참을 수 없어요 / 이런 무더위는
해설
"can't stand" 는 참을 수 없다라는 것을 나타냄.
"this heat" 는 무더위를 의미함.
오늘의 민법 한마디(for real estate)
제1편 총칙 / 제5장 법률행위 / 제3절 대리
제135조(상대방에 대한 무권대리인의 책임)
1. 다른자의 대리인으로서 계약을 맺은 자가 그 대리권을 증명하지 못하고, 또 본인의 추인을 받지 못한 경우에는 그는 상대방의 선택에 따라 계약을 이행할 책임 또는 손해를 배상할 책임이 있다.
2. 대리인으로서 계약을 맺은 자에게 대리권이 없다는 사실을 상대방이 알았거나, 알 수 있었을 때 또는 대리인으로서 계약을 맺은 사람이 제한 능력자일때에는 제1항을 적용하지 아니한다.
나의 목표 및 다짐을 항상 내곁에 두기.
목표
나의 강점을 바탕으로 나의 일을 잘해냄으로써 타인과 사회를 아릅답게 만든다.
현재 내가 가진 능력으로 누군가에 도움이 될 수 있을까? 에 대해서 항상 생각하기
목표를 이루기 위한 실천방안
꾸준한 블로깅/기록법/독서법으로 넘버원이 아닌 온리원이 되보자.
천사불여일행(千思不如一行)을 항상생각하며 체화 및 각인시키자.
"천번 생각하는것보다 한번 행동하는 것이 더 중요하다."
기기일약 불능십보(騏驥一躍 不能十步) / 노마십가 공재불사(駑馬十駕 功在不舍)
천리마도 한번에 열걸음을 뛸 수 없고, 느리고 둔한말이라도 열흘이면 하룻길을 간다.