ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 스프링 부트 입문 이모저모
    Etc 2018. 11. 13. 09:05

    #스프링 부트 입문 이모저모

    1. spring-boot-starter =>의존성과 설정을 자동화해주는 모듈을 뜻한다

    1) Auto-configuration =>자동으로 사용자가 추가한 종속성을 기반으로 스프링 어플리케이션을 구성

    가)@SpringBootApplication

    A) @EnableAutoConfiguration => 스프링 부트의 auto-configuration 메카니즘을 활성화 한다.

    B) @ComponentScan => 어플리케이션 클래스가 위치한 package에서 @Component 어노테이션이 달린 클래스들을 스캔하는 기능을 활성화

    C) @Configuration => 추가 빈을 컨텍스트에 등록하거나 추가 구성 클래스를 불러올 수 있다.

    나) spring-boot-starter-web => 웹 구축을 위한 스타터, REST 애플리케이션, Tomcat 서버를 내장 서버로 사용

    다) spring-boot-starter-devtools => 응용 프로그램 개발 모드에서 유용한데 코드가 변경된 경우 서버를 자동으로 다시 시작하는 일들을 한다.


    2. 그레이들 래퍼(Wrapper) => 이미 존재하는 프로젝트를 새로운 환경에 설치할때 별도의 설치나 설정과정 없이 곧 바로 빌드할 수 있게 하기 위함이다.

    1) gradle-wrapper.jar => 파일이 프로젝트 내에 설치하는 이 파일을 사용하여 gradle task를 실행하기 때문에 로컬 환경의 영향을 받지 않는다.(실제로는 wrapper 버전에 맞는 로컬 캐시에 다운로드 받음)

    2) gradle-wrapper.properties => wrapper 버전 등을 변경하면 task 실행시, 자동으로 새로운 wrapper 파일을 로컬 캐시에 다운 받는다.

    가) task => 빌드 파일(build.gradle)에서 테스크의 처리를 기술해두면, 그것을 gradle 명령으로 호출 실행 시킬 수 있다.

    3. 그레이들 멀트 프로젝트 => 플리글랏 언어 지원 가능 하며 maven의 total 프로젝트 처럼 하위 프로젝트를 구성할 수 있다.

    1) settings.gradle

    가) include => 하위 프로젝트

    2) build.gradle

    가) subprojects => settings.gradle에 include된 프로젝트 전부 관리

    1) repositories => 여러 저장소를 사용할 수 있게 해준다.

    A) mavenCentral() => Apache Maven 중앙 저장소 이용시

    B) jcenter() => Maven과 Gradle 등 각종 빌드 도구에서 사용할 수 있는 공개 저장소

    3) project => 하위 프로젝트간의 의존성을 관리


    4. H2데이터베이스 => 인메모리 DB 기능 지원, 별도의 설치 과정이 없고 매우 가볍고 빨라서 많이 사용함



Designed by Tistory.