Sự khác biệt giữa JSP và Servlets

JSP vs Servlets

Servlet là một thành phần phần mềm phía máy chủ được viết bằng Java và chạy trong môi trường vùng chứa tương thích được gọi là vùng chứa Servelt (như Apache Tomcat). Servlets được sử dụng chủ yếu trong việc triển khai các ứng dụng web tạo các trang web động. Tuy nhiên, họ có thể tạo bất kỳ loại nội dung nào khác như XML, văn bản, hình ảnh, clip âm thanh, tệp PDF, Excel theo lập trình.

Một Servlet được viết để tạo một số HTML có thể trông như thế này:

lớp công khai MyServlet mở rộng httpServlet
được bảo vệ void doGet (yêu cầu httpServletRequest, phản hồi httpServletResponse) ném ServletException, IOException

PrintWriter w = answer.getWriter ();
w.write (NỀN TẢNG);
w.write (NỀN TẢNG);

Ngày d = Ngày mới ();
w.write (d.toString ());
w.write (NỀN TẢNG);
w.write (NỀN TẢNG);

Đoạn mã trên chứa hỗn hợp mã nguồn HTML và Java. Như vậy là không dễ đọc và duy trì. JSP là viết tắt của JavaServer Pages cung cấp một sự thay thế tốt hơn. Ví dụ, sau đây là một đoạn mã JSP dẫn đến kết quả đầu ra giống hệt nhau:






Các tác giả trang web tìm thấy JSP dễ dàng hơn để viết và duy trì. Tuy nhiên, các tệp tin được dịch sang Servlets bởi một thùng chứa Servlet tại thời điểm các tệp tin được truy cập lần đầu tiên. Tuy nhiên, người viết logic kinh doanh thấy Servlets dễ làm việc hơn với.

Một yêu cầu nhận được bởi một ứng dụng web sẽ kích hoạt việc thực thi một số logic nghiệp vụ và sau đó tạo ra một trang web kết quả làm phản hồi. Trong các ứng dụng web hiện đại, việc kiểm soát chu trình xử lý yêu cầu tổng thể hầu hết được cung cấp bởi Servlets. Là giai đoạn cuối cùng trong việc xử lý một yêu cầu, một Servlet như vậy thường giao trách nhiệm tạo HTML động cho một tệp JSP.