Group Study (2020-2021)/Spring Boot

[Spring Boot] 1주차 스터디 - Spring Boot Web 프로젝트 생성하기

알 수 없는 사용자 2020. 10. 16. 12:38

강의 진도

섹션0. 강의 소개

섹션1. 프로젝트 환경설정

  • 프로젝트 생성
  • 라이브러리 살펴보기
  • View 환경설정
  • 빌드하고 실행하기

진행 상황

프로젝트 생성

사전 준비

Java 11 설치

IDE: IntelliJ 설치

 

스프링 부트 스타터 사이트로 이동해서 스프링 프로젝트 생성

https://start.spring.io 

 

프로젝트 설정

  • Project: Gradle Project
  • Spring Boot: 2.3.x
  • Language: Java
  • Packaging: Jar
  • Java: 11
  • Dependencies: Spring Web, Thymeleaf

Gradle 전체 설정

build.gradle

plugins {
id 'org.springframework.boot' version '2.3.1.RELEASE'
id 'io.spring.dependency-management' version '1.0.9.RELEASE'
id 'java'
}

group = 'hello'
version = '0.0.1-SNAPSHOT'

sourceCompatibility = '11'

repositories {
mavenCentral()
}

dependencies {
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
implementation 'org.springframework.boot:spring-boot-starter-web'
testImplementation('org.springframework.boot:spring-boot-starter-test') {
exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'}
}

test {
useJUnitPlatform()
}

동작 확인

  • 기본 메인 클래스를 실행하는 과정
  • 스프링 부트 메인 실행(http://localhost:8080) 후 동작을 확인
  • 에러 페이지가 나오면 성공적으로 동작 되는 것

자바 실행 환경 설정

최근 IntelliJ 버전은 Gradle을 통해서 실행하는 것이 기본 설정이지만

실행 속도가 느리기 때문에 자바로 바로 실행할 수 있도록 설정을 변경해준다.

  • File → Setting

View 환경설정

Welcome Page 만들기

resources/static/index.html

<!DOCTYPE HTML>
<html>
<head>
 <title>Hello</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
Hello
<a href="/hello">hello</a>
</body>
</html>

controller 패키지 및 파일 작성

java/hello.hello.spring/controller/HelloController

@Controller
public class HelloController {

 @GetMapping("hello")
 public String hello(Model model) {
 model.addAttribute("data", "hello!!");
 return "hello";
 }
}

html 파일 작성

resource/templates/hello.html

<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
 <title>Hello</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<p th:text="'안녕하세요. ' + ${data}" >안녕하세요. 손님</p>
</body>
</html>

thymeleaf 탬플릿엔진 동작 확인

  • 실행: http://localhost:8080/hello
  • 컨트롤러에서 리턴 값으로 문자를 반환하면 viewResolver가 화면을 찾아서 처리한다.
  • viewName 매핑: resources:templates/+{ViewName}+.html

빌드하고 실행하기

  • 명령 프롬프트(cmd)로 이동
  • ./gradlew→gradlew.bat 실행
  • gradlew build
  • 윈도우에서 Git bash 터미널 사용하기: www.inflearn.com/questions/53961
 

[[ 강의 시청 Tip ]] 윈도우라서 맥의 iTerm이 없는데 어떡하나!? - 인프런

질문 - [[ 강의 시청 Tip ]] 윈도우라서 맥의 iTerm이 없는데 어떡하나!? `윈도우라서 맥의 iTerm이 없는데 어떡하나!?` `Windows 환경에서 Terminal 사용 시, 리눅스 명령어 사용해볼 수 없나?` 고민하시는 ��

www.inflearn.com