✨ 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
🔅 목차
✅프로젝트 환경설정
✔#1 프로젝트 생성
#2 라이브러리 살펴보기
#3 view 환경설정
#4 빌드하고 실행하기
🔅 사전 준비
- Java 11 설치
- IDE : IntelliJ 설치
🔅 스프링 프로젝트 생성
✅ 스프링 부트 스타터 사이트로 접속하여 스프링 프로젝트를 생성한다.
: https://start.spring.io
✅ 설정은 하단 내용대로 한 뒤, Generate 버튼을 눌러서 생성을 해주었다.
- Project : Gradle Project
✔ maven이나 gradle은 필요한 라이브러리를 가져오고, 빌드하는 라이프사이클까지 관리해주는 툴
- Language : Java
- Spring Boot : 2.7.5
✔ m1: Milestone1. 프리 알파 단계에 있는 한 종류. 특정한 집합의 기능이 포함되며, 기능이 완성되자마자 공개.
✔ RC : Release Candidate. 마지막 제품이 될 가능성이 있는 베타 버전으로, 상당한 버그가 나타나지 않으면 출시할 준비가 되었음을 의미
✔ snapshot : 만들고 있는 버전
✔ 버전 정보만 있으면 정식 버전
- Project Metadata
- Group : hello
✔ 보통의 경우, 기업의 도메인명이 들어감
- Artifact : hello-spring
✔ 빌드되어 나오는 결과물
- Name : hello-spring
- Description : Demo project for Spring Boot
✔ 프로젝트 설명
- Package Name : hello.hello-spring
✔ 패키지 이름
- Packaging: Jar
- Java : 11
- Dependencies : Spring Web (웹 프로젝트), Thymeleaf (html을 만들어주는 템플릿 엔진)
✔ 어떤 라이브러리를 가져와서 쓸지 정하는 부분
✅ Generate으로 생성된 zip 파일은 특정 경로( C:\study )에 압축을 풀어주었다.
✅ 인텔리제이에서 해당 프로젝트를 open 준다.
- IntelliJ 실행 시, Open or Import라고 있는데 이를 선택한다.
- study > hello-spring > build.gradle 선택 후 Open as project 선택하여 Open 한다.
(🙄처음 실행 시, 여러 외부 라이브러리를 가져오므로 시간이 걸림! )
🟥 Project란?
- 하나의 애플리케이션의 소스코드들을 모아 놓은 일종의 폴더같은 개념
- "1개의 프로젝트는 1개의 프로그램"이라고 생각해도 무방 (🙄초급 수준에서 말이죠! )
🟥 Package란?
- Class와 Interface의 집합
- 통상적인 명명 규칙: 프로젝트명.중간관리명.세부관리명
ex) java.lang.String, io.velog.login
🔅 IntelliJ 구조 설명
- .idea
: IntelliJ가 사용하는 설정 파일
- gradle
: gradle 관련 폴더
- src
: main 폴더와 test 폴더로 나뉘어져 있음
(🙄현재의 개발 트렌드에서는 test 코드가 매우 중요하다는 뜻 )
✔ main> java : 실제 패키지와 소스파일이 있음
✔ main> resources : 자바 코드를 제외한 html, xml, properties와 같은 설정 파일 등이 있음
(즉, 자바 파일을 제외한 나머지)
✔ test : test 코드 소스
- build.gradle
: 지금 단계에서는 gradle이 버전설정하고 라이브러리를 가져오는 역할을 하는구나까지 이해하면 되고, 자세하게 알 필요는 없음
✔ sourceCompatibility ='11'
: Java 11을 의미
✔ repositories
: mavenCentral()이라는 공개된 사이트가 있는데, 여기서 라이브러리를 다운받아 가져온다는 것을 의미
- .gitignore
: 깃에는 필요한 소스코드 파일만 올라가고, 빌드된 결과물 같은건 올라가면 안됨. 이런 설정은 https://start.spring.io 에서 알아서 다 해줌
🔅 프로젝트 실행 시 팁
File > Settings > Gradle 검색 후 [Build and run using], [Run tests using] 둘 다 gradle 아닌 IntellliJ IDEA로 설정
👉 Gradle을 거치지 않고 더 빨리 실행이 된다.
🔅 프로젝트 실행
✅ 실행 방법
✅ 실행 결과