Q1.
thymeleaf로 Java-Springboot에서 쓰인 변수 hello와 그 값 10 을 어찌저찌 가져와서,
<span th:attr="data-id=${hello}"> 에 넣으면,
해당 태그는 html 소스에서 어떻게 보이게 되는거지?
A1.
ChatGPT의 말:
Thymeleaf를 사용해 <span th:attr="data-id=${hello}">에 변수를 넣으면, 서버에서 렌더링된 후의 HTML 소스는 Thymeleaf 템플릿 엔진에 의해 처리된 결과를 보여줍니다.
Java-Spring Boot 코드에서 hello라는 이름의 변수에 값 10을 할당했다고 가정해보겠습니다. 예를 들어, 아래와 같은 컨트롤러 코드가 있다고 하면:
@Controller
public class MyController {
@GetMapping("/example")
public String example(Model model) {
model.addAttribute("hello", 10);
return "example"; // example.html을 반환
}
}
이제 example.html 템플릿의 해당 부분이 다음과 같다고 가정합니다:
<span th:attr="data-id=${hello}"></span>
th:attr는 HTML 속성을 설정하는 데 사용되며, ${hello}는 컨트롤러에서 전달된 모델 데이터를 참조합니다. Thymeleaf가 이 템플릿을 처리한 후, 렌더링된 HTML은 다음과 같이 보이게 됩니다:
<span data-id="10"></span>
과정 설명:
- th:attr의 역할: th:attr은 HTML 속성을 동적으로 설정할 수 있도록 해줍니다.
- ${hello}는 Spring Model에서 제공된 hello 변수의 값을 참조합니다.
- Thymeleaf 처리: Thymeleaf 템플릿 엔진은 ${hello}를 실제 값 10으로 대체하여 최종 HTML을 생성합니다.
- 최종 결과: 브라우저가 받는 최종 HTML은 Thymeleaf로 동적으로 생성된 결과물입니다.
결과적으로 브라우저가 보게 되는 소스는 순수 HTML 형태로 변환된 상태이며, data-id 속성이 변수의 값으로 설정됩니다.
'오답노트 및 하다 막힌 부분 > Spring' 카테고리의 다른 글
SpringBoot 프로젝트의 Spring 버전 업데이트 (0) | 2024.12.18 |
---|---|
회원정보 수정 후 프사 안뜨던 이유 (1) | 2024.11.14 |
char 타입의 변수를 String으로 바꾸었을 때. (0) | 2024.11.14 |
로그인 갱신시간 (0) | 2024.11.12 |
mapper에서 조건태그로 sql 구문 만들기 (0) | 2024.11.09 |