스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 - 강의 기록 1
1. 프로젝트 환경 설정
IntelliJ Project structure 설정하기란?
출처: Configure projects | IntelliJ IDEA
IntelliJ IDEA 프로젝트의 구성
- IntelliJ IDEA는 프로젝트를 설정할 때 Module, Project, Global 세 가지 유형으로 설정할 수 있다.
- Global: IntelliJ IDEA에서 생성된 프로젝트에 대해 일괄된 설정
- Project: 현재 열려 있는 프로젝트에만 적용되는 설정
- Module: 프로젝트 안의 모듈에만 적용되는 설정.
- 프로젝트 안에 여러 개의 모듈이 존재하는 이유는 한 프로젝트 안에서 다양한 SDK/Language level/Libraries를 각기 다르게 설정해줘야할 필요가 있기 때문이다.
- SDK: Software Development Kit의 약자로, 개발자는 SDK를 통해 모든 기능을 처음부터 만들 필요 없이, 미리 구축된 도구들을 활용하여 특정 플랫폼에 특화된 소프트웨어나 커스텀 앱을 효율적으로 만들 수 있다.
- Language level: IntelliJ IDEA와 java compiler가 사용할 언어을 지정하는 것을 의미한다.
- Libraries: 해당 모듈에서 사용하는 의존관계가 있는 라이브러리 목록
- 현재 프로젝트 Gradle과 의존관계가 있는 라이브러리들을 확인할 수 있다.
프로젝트 JDK 설정
Gradle JDK 설정
IntelliJ Gradle *대신에 자바 직접 실행
실행 확인하기
thymeleaf template engine 동작 다이어그램
package com.example.hello.hello_spring.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class HelloController {
@GetMapping("world")//url path와 일치시키기= http://localhost:8080/world
public String hello(Model model) {
model.addAttribute("data",
"world!!");// world.html과 thymeleaf가 연결시켜줌, th:text="'안녕하세요. ' + ${data}
return "world";// resources/templates 안의 폴더명과 일치시키기
// 컨트롤러에서 리턴 값으로 문자를 반환하면 뷰 리졸버( `viewResolver` )가 화면을 찾아서 처리한다.
// resources:templates/` +{ViewName}+ `.html`
}
}
spring-boot-devtools
html
파일을 컴파일만 해주면 서버 재시작 없이 View 파일 변경이 가능하다.
빌드하고 실행하기
참고자료:
댓글남기기