관리 메뉴

여름 언덕에서 배운 것

1.왓챠피디아 클론 프로젝트 세팅하기 (Spring Boot 프로젝트 생성) 본문

사이드 프로젝트🍟/왓챠피디아 클론

1.왓챠피디아 클론 프로젝트 세팅하기 (Spring Boot 프로젝트 생성)

잔뜩 2025. 4. 11. 22:49

 

💬 왓챠피디아 클론 프로젝트는

프론트엔드는 React, 백엔드는 Spring Boot를 기반으로 개발하려고 합니다!

 

오랜만에 프로젝트를 0부터 시작하려고 하니 다 까먹 ..ㅎㅎ

but 정성스레 정리해주신 분들이 많아서 얼마나 다행인지

일단 킵고잉 

 

✅ Spring Initialzr(https://start.spring.io/)을 통해[SpringBoot] 프로젝트 생성

Spring Boot 프로젝트를 생성 할 때에 프로젝트의 기본 정보를 설정하는 곳이에요. 이 정보는 pom.xml 구조에 반영됩니다.

Project : 프로젝트 생성시 선택하는 빌드도구 입니다. 저는 익숙한 xml 기반의  MAVEN 선택 ! 

Language : 어떤 언어로 코드를 작성할 지 , Java는 Spring Boot와 가장 잘 호환되는 언어

Spring Boot :  SNAPSHOT은 개발중인 임시버전, M이 붙은 건 Milestone으로 최종 릴리즈 전, 단계별로 공개하는 테스트용 버전 그래서 되도록이면 아무것 도 안 붙은걸 골라주자

📂 각 항목 설명

Group 보통 회사, 조직, 도메인 이름을 따름 com.watcha
Artifact 프로젝트 이름 (이게 최종 파일명에 사용됨) mywatcha
Name 프로젝트 이름 (보통 Artifact와 동일) mywatcha
Description 설명 문구 (자유롭게 작성) Watchapedia clone using Spring Boot
Package name Java 기본 패키지명 (Group + Artifact 조합) com.watcha.mywatcha
Packaging 실행 방식 (jar vs war) 보통 jar 사용
Java 사용할 Java 버전 17 선택 (현재 깔려있는 자바 버전이 17)

 

✅ 기본적으로 꼭 추가하면 좋은 Dependencies

1. Spring Web - RESTful API 개발을 위한 핵심 모듈

  • REST API를 만들기 위한 기본 라이브러리
  • Apache Tomcat 내장 → 별도 톰캣 설치 없이 실행 가능 , http://localhost:8080으로 바로 테스트 쌉가능
  • @RestController, @GetMapping 같은 애너테이션을 사용하려면 꼭 필요

**Tomcat은 Java 웹 애플리케이션을 실행해주는 웹 서버(WAS)입니다.

자바로 만든 웹 서비스 (예: JSP, Servlet, Spring Web 앱)를 구동할 수 있는 서버예요

2. Spring Boot DevTools - 자동 리스타트 및 개발 편의성 향상 도구

  • 개발 도중 자동 리스타트 기능 제공 → 개발 편의성 증가
  • 코드 수정 후 서버 재시작 없이 바로 반영됨

3. Lombok  - 반복 코드 생략을 위한 애너테이션 도구

  • @Getter, @Setter, @Builder 등을 통해 코드 간결하게
  • 필드 많을 때 정말 유용! ❗  IDE(특히 IntelliJ)에 Lombok 플러그인 설치 필요

4. MySQL Driver - 데이터베이스 연결을 위한 MySQL JDBC 드라이버

  • 실제 DB로 MySQL을 사용할 예정이라면 필수!
  • application.properties에서 DB 주소만 설정하면 자동 연결

5. Spring Security - 로그인, 권한, 인증 등 보안 처리를 위한 프레임워크

6. OAuth2 Client  - Google, Kakao 등 소셜 로그인 기능을 구현하기 위한 도구

 

728x90