ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 스프링 부트(Spring Boot) 개발 환경 설정
    개발환경/Spring Boot 2023. 3. 11. 14:08
    728x90

     

     

    스프링부트 프로젝트를 만들기 위해서 두가지 방법으로 이클립스나 인텔리제이와 같은 작업도구 내 workspace에서 만드는 방법과 아래 설명할 외부 사이트에서 만드는 방법이다.

     

    외부 사이트에서 스프링부트 프로젝트 만드는 방법을 알아보자. 하단 링크에 들어가서 프로젝트에 필요한 옵션을 선정한다.

    https://start.spring.io/

     

    https://start.spring.io/

     

    빌드관리도구 (Gradle - Groovy)

    소프트웨어 개발에 있어서 소스 코드를 실행 가능한 애플리케이션으로 만들어주는 도구를 의미한다.

    Gradle은 대규모 프로젝트에서 복잡해지는 경향이 있는 Ant, Maven에서 사용하는 XML 기반 스크립트에 비해 관리가 편하다는 장점이 있다.

     

    언어 (Java)

    개발 언어를 선정한다.

     

    스프링부트 버전 ( 2.7.9 )

    버전 중 SNAPSHOT, M1으로 표기된 것이 있다. SNAPSHOT은 개발중인 버전을, M1은 정식으로 릴리즈되지않는 버전을 의미한다.

     

    프로젝트 이름 ( firstspring )

    Group - 기업, 회사 등 도메인명

    Artifact - 빌드된 결과물 이름

    Name - 프로젝트 이름

    Package name - 풀 패키지 경로와 프로젝트이름

    ( GroupArtifact를 작성하면 자동으로 Name과 Package name이 만들어짐 )

     

    배포형태 ( Jar )

    Jar는 Java 어플리케이션이 동작할 수 있도록 프로젝트를 압축한 파일이다.

    War는 Servlet, Jsp 컨테이너를 배치할 수 있는 웹 어플리케이션을 압축한 파일로 구동시 was가 필요하다.

     

    자바버전 ( 11 )

    PC에 설치된 자바버전를 확인하여 선정한다.

     

    Dependencies [ 의존성 ] ( Spring Web, Thymeleaf )

    프로젝트 개발할 때 필요한 라이브러리들을 모아둔 것으로 라이브러리들을 추가하고, 버전을 명시하면서 의존성 관리를 할 수 있다. Maven은 pom.xml 파일, Gradle은 build.gradle 파일에서 Dependencies를 관리 할 수 있다.

     

     

     


     

     

     

    위와 같이 세팅이 끝났다면, GENERATE 버튼을 눌러 프로젝트 파일을 다운받고 압축을 풀어 작업도구(이클립스 혹은 인텔리제이)에서 열러준다.

     

     

     

    처음 프로젝트를 열 경우, 외부에서 라이브러리 다운을 받기 때문에 오래 걸릴 수 있다.

    프로젝트 구조

     

     

    build.gradle 파일을 열어 스프링부트 초기 설정하였던,

    스프링 부트 버전과 프로젝트 이름,  Dependencies 등 확인이 가능하다.

    build.gradle

     

     

     

    이제 정상적으로 스프링부트 프로젝트가 실행되는지 확인해본다.

     

    src > main > java 하위 Application 파일에서 main 좌측 녹색 삼각형 버튼을 클릭하여 실행한다.

     

    console에 error 없이 정상적으로 started 되었다면,

     

    브라우저에서 localhost:8080를 입력하여 아래와 같은 웹 페이지가 호출되었다면 정상적으로 프로젝트가 실행된 것이다.

    스프링부트는 기본적으로 톰캣서버를 내장하고있기때문에 서버 기동이 가능하다.

     

     

     

     

     

    728x90

    댓글

Designed by Tistory.