환경 설정
https://start.spring.io/ 여기 접속하면 이렇게 뜹니다.
설정은 다음과 같이 해주시고 java17 이상이 필요합니다.
java23으로 하려고 했는데 안되서 그냥 java17로 다시 깔아서 해줬습니다.
자바 실행했을 때 이렇게 뜨면 실행된겁니다.
http://localhost:8080/ 로 접속했을 때 이렇게 뜨면 성공입니다.
라이브러리
라이브러리를 설명해주는데 Gradle, 의존성이 뭔지 몰라서 GPT한테 물어봤습니다.
이해가 쏙쏙 되죠?
보니까 의존성을 하나 가져오면 의존성의 의존성의 의존성의 ~~~~ 까지 가져오더라고요.
그러니까 GPT가 해준 비유로 치면 요리에 필요한 재료가 사실은 이미 조리가 된 재료라서
재료의 재료를 가져오는 겁니다.
스프링 부트 라이브러리
spring-boot-starter-web spring-boot-starter-tomcat: 톰캣 (웹서버)
spring-webmvc: 스프링 웹
MVC spring-boot-starter-thymeleaf: 타임리프 템플릿 엔진
(View) spring-boot-starter(공통): 스프링 부트 + 스프링 코어 + 로깅
spring-boot
spring-core
spring-boot-starter-logging
logback, slf4j
테스트 라이브러리
spring-boot-starter-test junit: 테스트 프레임워크
mockito: 목 라이브러리
assertj: 테스트 코드를 좀 더 편하게 작성하게 도와주는 라이브러리
spring-test: 스프링 통합 테스트 지원
이 정도가 많이 쓰는 라이브러리인데 지금은 하나도 모르겠으니 그냥 보기만 하겠습니다.
view 환경 설정
컨트롤러에서 리턴 값으로 문자를 반환하면 뷰 리졸버( viewResolver )가 화면을 찾아서 처리를 한다는데
resources:templates/ +{ViewName}+ .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>
package hello.hello_spring.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class HelloControler {
@GetMapping("hello")
public String hello(Model model){
model.addAttribute("data", "hello!!");
return "hello";
}
}
실행 화면
실행해보니 잘 되네요 :)
'WINK-(Web & App) > Spring Boot 스터디' 카테고리의 다른 글
[2025 1학기 스프링부트 스터디] 남윤찬 #2주차 (0) | 2025.03.30 |
---|---|
[2025 1학기 스프링부트 스터디] 고윤정 #1주차 (0) | 2025.03.30 |
[2025 1학기 스프링부트 스터디] 정다은 #1주차 (0) | 2025.03.29 |
[2025 1학기 스프링부트 스터디] 김민서 #1주차 (0) | 2025.03.29 |
[2025 1학기 스프링부트 스터디] 이상래 #1주차 (0) | 2025.03.28 |