[개발] - Spring/Thymeleaf
Thymeleaf (1) 텍스트
완벽한 장면
2023. 11. 7. 13:30
텍스트 - text, utext
실행
http://localhost:8080/basic/text-basic
Escape
HTML 문서는 < , > 같은 특수 문자를 기반으로 정의된다.
따라서 뷰 템플릿으로 HTML 화면을 생성할 때는 출력하는 데이터에 이러한 특수 문자가 있는 것을 주의해서 사용해야 한다.
변경 전
"Hello Spring!"
변경 후
"Hello <b>Spring!</b>"
<b> 테그를 사용해서 Spring!이라는 단어가 진하게 나오도록 해보자.
웹 브라우저에서 실행결과를 보면
개발자가 의도한 것은 <b> 가 있으면 해당 부분을 강조하는 것이 목적이었다.
그런데 <b> 태그가 그대로나온다.
소스보기를 하면 < 부분이 < 로 변경된 것을 확인할 수 있다.
HTML 엔티티
타임리프는 다음 두 기능을 제공한다.
BasicController
@GetMapping("/text-unescaped")
public String textUnescaped(Model model) {
model.addAttribute("data", "Hello <b>Spring!</b>");
return "basic/text-unescaped";
}
실행
http://localhost:8080/basic/text-unescaped
실행해보면 다음과 같이 정상 수행되는 것을 확인할 수 있다.
728x90
반응형