Thymeleaf là gì? So sánh JSP, JSF với Thymeleaf

Thymeleaf là gì? So sánh JSP, JSF với Thymeleaf

1. Thymeleaf là gì?

Thymeleaf là một Java template engine dùng để xử lý và tạo HTML, XML, Javascript, CSS và text.

Mục tiêu chính của thymeleaf là mang lại các template tự nhiên, đồng nhất, đơn giản (nature templates) cho công việc phát triển.

Các lợi ích của Thymeleaf

  • Với thymeleaf, ta chỉ cần sử dụng file HTML là có thể hiển thị tất cả mọi thứ (không cần jsp …).
  • Thymealeaf sẽ tham gia vào renderd các file HTML dưới dạng các thuộc tính trong các thẻ HTML –> do đó ta không cần phải thêm bất kỳ thẻ non-HTML nào.
  • Vì là HTML nên ta có thể xem các file view mà không cần khởi chạy server.
  • Thymeleaf hỗ trợ cơ chế cache, do đó ta có thể cache dữ liệu hoặc custom để hiển thị view khi có thay đổi mà không cần restart server.

Thymeleaf là gì? So sánh JSP, JSF với Thymeleaf

Ví dụ:

2. So sánh Thymealeaf với JSP, JSF

  • Như đã nhắc ở trên, thymeleaf là thuần HTML, để hiển thị dữ liệu từ server nó sẽ dùng các thẻ html do thymeleaf cung cấp.
  • File JSP có thể nhúng code java (cái này hạn chế, tốt nhất là không làm), hiển thị dữ liệu bằng JSTL.
  • JSF thì định nghĩa các component (đã bao gồm cả javascription trong đó) để hiển thị.

Mỗi loại trên đều có ưu nhược điểm riêng của mình, ví dụ với JSP thì người ta có thể kết hợp thêm Apache Tiles để tạo template, với JSF thì đã có sẵn các component nên tiết kiệm rất nhiều thời gian nhưng lại khó custom…

 

Okay, Done!

Xem thêm:

Ví dụ Spring MVC + Thymeleaf

Ví dụ Spring Boot + Thymeleaf

Thymeleaf là gì? So sánh JSP, JSF với Thymeleaf

References:

http://www.thymeleaf.org/

stackjava.com