Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

개발자되기 프로젝트

[Thymeleaf] 기본 객체들 본문

인프런/[인프런] 스프링 MVC 2

[Thymeleaf] 기본 객체들

Seung__ 2021. 9. 18. 00:18

1. Thymeleaf가 제공하는 기본 객체


  • ${#request}
    • #request 는 HttpServletRequest 객체가 그대로 제공됨
    • 따라서 데이터를 조회하려면 request.getParameter("data") 처럼 불편하게 접근해야..
  • ${#response}
  • ${#session}
  • ${#servletContext}
  • ${#locale}

 

 

2. 편의 객체


  • HTTP 요청 파라미터 접근: param --> RequestParameter  조회
    • 일반적으로 Model에 RequestParameter를 담아서 넘겨야하는데, Thymeleaf에서 제공하는 기능임.
    • 예) ${param.paramData}
  • HTTP 세션 접근: session
    • 예) ${session.sessionData}
  • 스프링 빈 직접 접근: @
    • 예) ${@helloBean.hello('Spring!')}

 

 

3. 예제

3.1 Controller


    @GetMapping("/basic-objects")
    public String basicObjects(HttpSession session){
        session.setAttribute("sessionData", "Hello Session");
        return "basic/basic-objects";
    }

    @Component("helloBean")
    static class HelloBean{
        public String hello(String data){
            return "Hello" + data;
        }
    }

 

 

3.2 HTML


<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>식 기본 객체 (Expression Basic Objects)</h1>
<ul>
    <li>request = <span th:text="${#request}"></span></li>
    <li>response = <span th:text="${#response}"></span></li>
    <li>session = <span th:text="${#session}"></span></li>
    <li>servletContext = <span th:text="${#servletContext}"></span></li>
    <li>locale = <span th:text="${#locale}"></span></li>
</ul>
<h1>편의 객체</h1>
<ul>
    <li>Request Parameter = <span th:text="${param.paramData}"></span></li>
    <li>session = <span th:text="${session.sessionData}"></span></li>
    <li>spring bean = <span th:text="${@helloBean.hello('Spring!')}"></span></
    li>
</ul>
</body>
</html>

 

 

3.3 결과


 

 

4. GitHub : 210917 Objects


 

GitHub - bsh6463/Thymeleaf

Contribute to bsh6463/Thymeleaf development by creating an account on GitHub.

github.com

 

'인프런 > [인프런] 스프링 MVC 2' 카테고리의 다른 글

[Thymeleaf] URL 링크  (0) 2021.09.18
[Thymeleaf] 유틸리티 객체, 날짜  (0) 2021.09.18
[Thymeleaf] 변수, SpringEL  (0) 2021.09.18
[Thymeleaf] Text, uText  (0) 2021.09.17
Thymeleaf 소개  (0) 2021.09.17
Comments