접속 시 위와 같은 화면이 나올 것이다.
project : Gradle-Groovy
language : Java
spring Boot는 괄호가 붙지 않은 2 버전 중 가장 최신 버전을 선택한다.
괄호가 붙은 버전들은 아직 미완성이거나 정식 릴리즈되지 않은 버전들이다.
-> 위 사진에서는 2.7.7 선택
-> 스프링 부트 버전 3부터는 강의와 다른 여러 가지 설정들이 필요하므로 버전 2를 사용한다.
group명과 artifact명은 자유롭게 설정한다.
artifact는 결과물의 이름으로 나오게 된다.
packaging : Jar
Java : 11
오른쪽 위의 버튼 ADD DEPENDENCIES를 누르고 Spring Web과 Thymeleaf를 선택하고 GENERATE 버튼을 눌러 다운을 받는다.
9번째 줄의 실행버튼을 누르고 main함수를 실행시킨다.
위와 같은 창이 나타난다면 인터넷 창을 열고 주소창에 'localhost:8080'을 입력한다.
다음과 같이 error page가 떴다면 성공이다.
spring boot를 이용하여 프로젝트를 생성해보면 자동으로 수많은 라이브러리들을 가져온다.
웹 어플리케이션을 구동시키는데에 필수적인 것들이며 빌드 시 몇십메가씩 차지한다.
라이브러리들은 그 자체로 작동되지 않고 작동되기 위한 또다른 라이브러리들을 가져와서 최종적으로 'spring core' 까지 연쇄적으로 가져온다.
예전에는 tomcat 서버에 자바 코드를 집어넣는 등의 힘든 작업이 필요하지만 요즘에는 편리하게 라이브러리 하나만 넣어주면 자동으로 설정된다.
system.out.println 사용보다 log에 남기는 것이 관리하는데에 편하기 때문에 log 사용은 필수적이다.
-> 실무에서는 log 사용이 절대적이지만 강의에서는 println 사용
<!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>
저장 후 서버를 동작 localhost:8080에 접속하면 에러페이지 대신 다른 화면이 등장한다.
이것은 별도의 프로그래밍이 아닌 넣은 그대로 동작하는 정적 페이지이다.
-> thymeleaf 템플릿 엔진 사용
package hello.hellospring.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class HelloController {
@GetMapping("hello")
// @GetMapping("hello")는 /hello의 접속을 hello를 호출하도록 해준다.
public String hello(Model model){
model.addAttribute("data","hello!!");
// data라는 이름의 키의 value값이 hello!!이다.
return "hello";
}
}
<!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>
<!-- 결과적으로 data 자리에 hello!!로 치환되어 화면에 출력된다. -->
</body>
</html>
※ 윈도우 기준
git bash 이용 필요
gradlew.bat 파일이 있는 프로젝트 파일로 경로 이동
ex) cd C:\work\intelliJ_project\hello-spring
gradlew 입력 후 엔터하면 빌드가 된다.
만약 libs폴더가 생성되지 않았다면 다시 시도한다.
-> ./gradlew clean build
위 명령어 입력 시 초기화하고 다시 빌드함.
성공적으로 빌드되었다면 libs 파일의 jar파일을 확인한다.
java -jar hello-spring-0.0.1-SNAPSHOT.jar 입력
마지막으로 localhost:8080 접속하여 확인한다.