새로운 프로젝트 시작🤩
🌿 thymeleaf란?
- 타임리프는 순수 HTML 파일을 웹 브라우저에서 열어도 내용을 확인할 수 있고,
서버를 통해 뷰 템플릿을 거치면 동적으로 변경된 결과를 확인할 수 있다.- 이렇게 순수 HTML을 유지하면서 뷰 템플릿도 사용할 수 있는 타임리프의 특징을 네츄럴 템플릿이라고 한다!
- thymeleaf 공식 사이트
resources:templates/
+ {ViewName}
+ .html
@Controller
public class HelloController {
@GetMapping("hello")
public String hello(Model model) {
model.addAttribute("data", "hello!!");
return "hello";
}
}
→ resources/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>
<!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>
Hello
<a href="/hello">hello</a>
</body>
</html>
📌 devtools
- 스프링 부트에서 제공하는 개발 편의를 위한 모듈
- 주로 변경된 코드를 서버 또는 화면에 신속하게 반영하여 결과를 확인하기 위해서 사용한다.
devtools
라이브러리를 사용하고 html 파일만 컴파일하면 서버 재시작 없이도 View 파일 변경이 가능하다![ restartedMain]
이렇게 뜬다.
이제 앞으로 Recompile 'hello.html'
만 하면 서버 재시작 없이, 브라우저 새로고침만 하면 View 파일 변경이 가능하다!
📌 H2 데이터베이스: 개발이나 테스트 용도로 가볍고 편리한 DB. 웹 화면 제공
jdbc:h2:~/jpashop2
로 DB 생성jdbc:h2:tcp://localhost/~/jpashop2
로 접속