본문 바로가기
✨ Back-end/etc

[Spring] 타임리프 경로(URL) 설정

by 환풍 2023. 9. 2.
728x90
반응형

 

컨트롤러

model 객체를 이용해서 data1과 data2 라는 문자열을 param1과 2로 뷰에 뿌려주었다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<h1>URL 링크</h1>
<ul>
  <li><a th:href="@{/hello}">basic url</a></li>
  <li><a th:href="@{/hello(param1=${param1}, param2=${param2})}">
    hello query param</a></li>
 
  <li><a th:href="@{/hello/{param1}/{param2}(param1=${param1}, param2=${param2})}">
    path variable</a></li>
 
  <li><a th:href="@{/hello/{param1}(param1=${param1}, param2=${param2})}">
    path variable + query parameter</a></li>
</ul>
</body>
</html>
cs

컨트롤러에서 받은 데이터를 타임리프로 받아 다시 컨트롤러에 던지는 방법에는 두 가지가 있다.

 

1. 쿼리 파라미터
@{ /hello(param1=${param1} , param2=${param2} ) }

이 데이터는 /hello?param1 = data1 & param2 = data2 로 표시될 수 있다. 경로 뒤에 소괄호(  ) 를 붙여 데이터를 넣어주는 방식이고 쉼표( , ) 를 통해 & 역할을 대신해준다.

 

2. 경로변수
@{/hello/{param1}/{param2} (param1=${param1}, param2=${param2} ) }

이 데이터는 /hello ? param1 = data1 & para2 = data2 로 표시된다.

728x90
반응형

댓글