본문 바로가기
Spring

[Spring]Spring boot

by whitedeveloper 2023. 1. 4.

Spring은 Application을 개발할 때 사전 작업이 많다(maven, dependency 설정)

 

#.Spring boot 장점

-자주 사용되는 library들이 미리 조합

-내장 서버를 포함 tomcat같은 WAS를 추가로 설치하지 않아도 개발 가능

-WAS에 배포하지않고 실행할 수 있는 JAR파일로 웹 개발 가능

 

 

#.빌드 관리 도구

-JVM이나 WAS가 프로젝트를 인식하고 실행할 수 있게 우리가 작성한 소스코드와 프로젝트에 사용된 파일들(.xml, .jar, .properties)을 빌드하는 도구

-개발 규모가 커질수록 관리할 라이브러리가 많아지고 라이브러리 간 버전 호환성을 체크해야 하는 어려움이 발생하는데 빌드 관리 도구를 이용하면 이 같은 문제를 해결할 수 있다.

 

#.메이븐(Maven)

-아파치 메이븐은 자바 기반의 프로젝트를 빌드하고 관리하는 데 사용하는 도구입니다. 초창기 자바 프로젝트의 대표적 관리 도구였던 Ant를 대체하기 위해 개발

-pom.xml 파일에 필요한 라이브러리를 추가하면 해당 라이브러리에 필요한 라이브러리까지 함께 내려받아 관리

-대표적인 기능

> 프로젝트 관리 : 프로젝트 버전과 아티팩트를 관리

>빌드 및 패키징 : 의존성을 관리하고 설정된 패키지 형식으로 빌드를 수행

>테스트 : 빌드를 수행하기 전에 단위 테스트를 통해 작성된 애플리케이션 코드의 정상 동작 여부를 확인

>배포 : 빌드가 완료된 패키지를 원격 저장소에 배포

 

#.메이븐 생명주기

메이븐 생명주기

-메이븐 생명주기는 기본 생명주기(Default), 클린 생명주기(Clean), 사이트 생명주기(Site) 의 3가지로 구분

기본 생명주기 = validate > compile > test > package > verify > install > deploy

클린 생명주기 = clean

사이트 생명주기 = site > site-deploy

*각 생명주기에는 위 와 같은 단계가 존재하며, 특정 단계를 수행하기 위해서는 이전 단계를 마쳐야 합니다.

clean : 이전 빌드가 생성한 모든 파일을 제거

validate : 프로젝트를 빌드하는데 필요한 모든 정보를 사용할 수 있는 지 검토

compile : 프로젝트의 소스코드를 컴파일

test : 단위 테스트 프레임워크를 사용해 테스트를 실행

package : 컴파일한 코드를 가져와서 JAR 등의 형식으로 패키징을 수행

verify : 패키지가 유효하며 일정 기준을 충족하는지 확인

install : 프로젝트를 사용하는 데 필요한 패키지를 로컬 저장소에 설치

deploy : 프로젝트를 통합 또는 릴리스 환경에서 다른 곳에 공유하기 위해 원격 저장소에 패키지를 복사

site : 메이븐의 설정 파일 정보를 기반으로 프로젝트의 문서 사이트를 생성

site-deploy : 생성된 사이트 문서를 웹 서버에 배포

 

 

 

 

 

 

 

'Spring' 카테고리의 다른 글

[spring]springboot 프로젝트 만들기 - intellij.ver  (0) 2023.01.08
[Spring]로깅 라이브러리 - logback  (0) 2023.01.05
[Spring] 스프링 프레임워크  (0) 2022.12.24
[Spring]SpringBoot  (0) 2022.11.01
[Spring]SpringBoot  (0) 2022.10.31