@GetMapping์ value ์์ฑ๊ฐ์ '{}'๋ก ์ฒ๋ฆฌํ๋ฉด ํ๋ ์ด์์ URL์ ์ง์ ํ ์ ์์ต๋๋ค.
exModel()์ ๋์ค์ ๋ค์ํ๊ฒ Thymeleaf๋ฅผ ์ค์ตํ๊ธฐ ์ํด์ URL ๋ณ๊ฒฝ์ด ์ฉ์ดํ๊ฒ ์์ฑํ์์ต๋๋ค.
SampleDTO ํ์ ์ ๊ฐ์ฒด๋ฅผ 20๊ฐ ์ถ๊ฐํ๊ณ ์ด๋ฅผ Model์ ๋ด์์ ์ ์กํฉ๋๋ค.
3.2.1 ๋ฐ๋ณต๋ฌธ ์ฒ๋ฆฌ
th:each = "๋ณ์: ${๋ชฉ๋ก} "
3.2.2 ์ ์ด๋ฌธ ์ฒ๋ฆฌ
th:if์ th:unless๋ฅผ ์ด์ฉํ๋ค๋ฉด ์ํฉ์ ๋ง๊ฒ ๋ค๋ฅธ ๋ด์ฉ์ ์ถ๋ ฅํ๋ ๊ฒ์ด ๊ฐ๋ฅํด์ง๋๋ค.
3.2.3 inline ์์ฑ
์ฌ๊ธฐ์ ์ค์ํ ๋ถ๋ถ์ th:inline์์ฑ
๊ฒฐ๊ณผ์์ ์ฃผ๋ชฉํด์ผํ๋ ๋ถ๋ถ
3.4 Thymeleaf์ ๋ ์ด์์
- JSP์ include์ ๊ฐ์ด ํน์ ๋ถ๋ถ์ ์ธ๋ถ ํน์ ๋ด๋ถ์์ ๊ฐ์ ธ์์ ํฌํจํ๋ ํํ
- ํน์ ํ ๋ถ๋ถ์ ํ๋ผ๋ฏธํฐ๋ก ์ ๋ฌํด์ ๋ด์ฉ์ ํฌํจํ๋ ํํ
3.4.1 include ๋ฐฉ์์ ์ฒ๋ฆฌ
<div> ํน์ <th:block>์ ์ด์ฉํด์ fragment1 ํ์ผ์ ์๋ ์กฐ๊ฐ๋ค์ ์ฌ์ฉํ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค.
3.4.2 ๋ ์ด์์ ํ ํ๋ฆฟ ๋ง๋ค๊ธฐ
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<style>
*{
margin: 0;
padding: 0;
}
.header {
width: 100vw;
height: 20vh;
background-color: aqua;
}
.content {
width: 100vw;
height: 70vh;
background-color: lightgray;
}
.footer{
width: 100vw;
height: 10vh;
background-color: green;
}
</style>
<div class="header">
<h1>HEADER</h1>
</div>
<div class="content">
<h1>CONTENT</h1>
</div>
<div class="footer">
<h1>FOOTER</h1>
</div>
</body>
</html>
'Spring > ๐ฅ[spring]์ฝ๋๋ก ๋ฐฐ์ฐ๋ ์คํ๋ง ๋ถํธ ์น ํ๋ก์ ํธ_๊ตฌ๋ฉ๊ฐ๊ฒ ์ฝ๋ฉ๋จ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก์ ํธ ๊ตฌ์กฐ ๋ง๋ค๊ธฐ (0) | 2023.02.06 |
---|---|
3.4.3 ๋ถํธ์คํธ๋ฉ ํ ํ๋ฆฟ ์ ์ฉํ๊ธฐ (0) | 2023.02.05 |
2.6.2 @Query ์ด๋ ธํ ์ด์ (0) | 2023.01.31 |
2.6 ์ฟผ๋ฆฌ ๋ฉ์๋(Query Methods)๊ธฐ๋ฅ๊ณผ @Query (0) | 2023.01.30 |
2.5 ํ์ด์ง/ ์ ๋ ฌ ์ฒ๋ฆฌํ๊ธฐ (0) | 2023.01.29 |