Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- endif
- 1929
- 자식
- Docker
- half-close
- container
- pack
- DEBUG
- strlen()
- 카운팅 정렬
- Kafka
- EOF
- struct
- 에라토스테네스의 체
- fork
- signal
- ifdef
- handling
- scanf()
- 2025
- Wait
- 구조체
- 10989
- sizeof()
- 필기
- fread()
- 백준
- 정보처리기사
- fgets()
- fwrite()
Archives
- Today
- Total
팥빵 먹으면서 코딩하는 블로그
[Spring Boot] vscode로 spring boot 프로젝트 만들기 본문
- JDK와 VSCode가 설치되어 있고, 환경변수가 설정되어 있다는 가정 하에 진행한다.
- Extention 설치
- Extension Pack for Java
- Gradle for Java
- Spring Boot Extension Pack
- Command Palette 열기
- "ctrl+shift+P" 혹은 "view -> command Palette (보기-> 명령 팔레트)" 로 command palette를 열 수 있다.
- Spring initializr (2025.03. 기준)
- 빌드 선택
- Gradle
- spring boot version 선택
- 3.4.4
- specify project 언어 선택
- Java
- Group id 설정
- com.example
- 보통은 example 부분에 기업 이름을 넣지만, 과제를 위해 github에 공개적으로 소스코드를 올리므로 임시로 example을 사용했다.
- Artifact id 설정
- 프로젝트의 목적이 드러나는 id
- ex. projectxxx, etc ...
- java version 선택
- 24
- 의존성 선택
- Spring Boot devTools
- Lombok
- Spring Web
- 프로젝트 생성
- 빌드 선택
- Spring Boot 프로젝트 실행
- 디렉토리 구조는 임의로 바꾸시면 됩니다.
- 현재 만들어놓은 제 디렉토리 구조는 다음과 같습니다.
- git 설정한 후의 디렉토리 구조이므로 / README.md 파일은 생략하고 봐주시길 바랍니다.
※ 단, 각 선택은 본 프로젝트의 목적에 맞는 선택으로 진행하였으므로 임의로 변경 가능
부록) Spring initializr 선택을 위한 비교
- JAR (Java Archive) vs WAR (Web Application Archive) 차이점
실행 방식 자체 실행 가능 (java -jar app.jar) 별도의 웹 서버(Tomcat, Jetty 등)에 배포해야 실행 가능 내장 서버 내장 Tomcat 포함 → 독립 실행 가능 외부 톰캣, WebLogic 등에 배포 필요 배포 방식 JAR 파일 하나만 배포하면 끝! WAR 파일을 Tomcat(WebApps 폴더 등)에 배포해야 함 컨테이너 환경 Docker & Kubernetes 배포에 적합 컨테이너보다는 전통적인 서버 배포 방식에 적합 운영 방식 Microservices, 독립 실행 서비스에 적합 기존 모놀리식(대형 웹 시스템) 환경에 적합 확장성 Spring Boot의 자동 설정 활용 가능 Spring Boot 기능 일부 제한될 수 있음 적용 사례 신규 프로젝트, 마이크로서비스 레거시 기업 시스템 유지보수 - Maven vs Gradle 비교
- Maven: 보수적인 프로젝트, 설정이 간단하지만 유연성이 낮음.
- Gradle: 빠른 빌드 속도, 유연한 확장성, 현대적인 프로젝트에 적합
설정 방식 XML(pom.xml) 기반 DSL(build.gradle) 기반 (Groovy/Kotlin) 의존성 관리 중앙 저장소(Maven Central)에서 다운로드 Maven 저장소 + 추가 플러그인 지원 빌드 속도 상대적으로 느림 (모든 태스크 실행) 캐싱을 활용해 빌드 속도가 빠름 유지보수 XML 문법이 많아 가독성이 떨어짐 코드 기반 DSL이어서 간결하고 관리가 쉬움 확장성 플러그인 추가가 제한적 플러그인을 활용해 자유롭게 확장 가능 CI/CD 호환성 오래된 프로젝트에서도 널리 사용됨 최신 DevOps 환경에서 더 유연하게 활용 가능
'project 일지 > spring boot 01' 카테고리의 다른 글
[Spring Boot] vscode gradle 빌드 오류(버전 호환성 문제) (0) | 2025.03.25 |
---|