Java/Thymeleaf

기본 객체들

코딩공부 2021. 12. 2. 00:03

타임리프는 기본 객체들을 제공

${#request}

${#response}

${#session}

${#servletContext}

${#locale}

 

#request 는 HttpServletRequest 객체가 그대로 제공되기 때문에 데이터를 조회

request.getParameter("data") 처럼 불편하게 접근

 

HTTP 요청 파라미터 접근: param

예) ${param.paramData}

 

HTTP 세션 접근: session

예) ${session.sessionData}

 

스프링 빈 접근: @

예) ${@helloBean.hello('Spring!')

 

@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;
 }
}

 

<!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>

 

http://localhost:8080/basic/basic-objects?paramData=HelloParam


request - controller에서 HttpServletRequest 객체와 같음

response - controller에서 HttpServletRespones객체와 같음

session - controller에서 넘겨준 session과 같음 

servletContext - controller에서 사용하는 객체와 같음

locale = ko 

 

편의객체

Request Parameter = HelloParam 

session = Hello Session

spring bean = Hello Spring!


참고 강의

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-2/dashboard

 

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의

웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있

www.inflearn.com

 

'Java > Thymeleaf' 카테고리의 다른 글

리터럴  (0) 2021.12.02
URL 링크  (0) 2021.12.02
유틸리티 객체와 날짜  (0) 2021.12.02
변수 - SpringEL  (0) 2021.12.01
텍스트 - text, utext  (0) 2021.12.01