Web Programming/Java Spring
JSP vs Thymeleaf
jinmc
2021. 1. 12. 15:31
반응형
보통 Java spring의 프론트엔드로 JSP를 많이 씁니다.
하지만 Jsp의 장점이자 단점은, html파일이 아니고, java 파일이라는 겁니다.
그래서, java 논리를 쓸 수 있어서 편한 점도 있지만,
seperation of concern, 즉, 프로그래밍 디자인적으로 프론트엔드와 백엔드를 나누려는
요즘의 트렌드에 조금 맞지 않다고도 볼 수 있습니다.
참고 url (영어) : www.quora.com/Which-is-better-Thymeleaf-or-JSP
하지만 확실한 건, thymeleaf건 jsp건, 그 문법에 대해서 알아야 한다는 점입니다.
아무리 thymeleaf가 html이라고 해도, 태그가 있기 때문입니다.
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1 th:text="${name}">Name</h1>
</body>
</html>
위와 같이 th를 사용하여 thymeleaf 네임스페이스를 추가해 주고,
controller에서 model로 들어온 name을 사용합니다.
jsp와 thymeleaf를 사용할 때 생각해야 할 건 그 뿐만이 아닙니다.
스프링 부트에서는 JSP에 자동 설정을 지원하지 않으며, 패키징을 할 때 Jar file로 패키징 하지 못하고
War file로만 할 수 있다고 합니다.
또한 Jsp에 의존성을 주입하는 경우 의존성 문제가 생길 수도 있다고 합니다.
Thymeleaf와 JSP와의 가장 큰 차이점은,
Thymeleaf는 JSP와는 다르게 servlet code로 변환하지 않는다는 점이라는 겁니다.
반응형