VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • C#
  • Python
  • PHP
  • Excel
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • HTML5
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Eclipse
    • Phần mềm tiện ích
    • Cấu trúc DL&GT
    • Selenium Test

Servlet Tuts

Servlet là gì? Tại sao bạn nên biết Servlet? Cài đặt môi trường Servlet Vòng đời của Servlet Tạo ứng dụng Servlet trên Eclipse Xử lý Form trong Servlet Ví dụ phương thức GET sử dụng URL Ví dụ phương thức GET sử dụng FORM Ví dụ phương thức POST sử dụng FORM Ví dụ truyền CheckBox trong Servlet Ví dụ đọc tất cả các tham số của Form trong Servlet Request trong Servlet Response trong Servlet HTTP Status Codes Xử lý cookies trong Servlet Session tracking trong Servlet Page redirect trong Servlet
List Câu Hỏi Phỏng Vấn Servlet
1 / 3
❮ ❯

Vòng đời của Servlet


Cài đặt môi trường Servlet
Tạo ứng dụng Servlet trên Eclipse

Một vòng đời của servlet có thể được định nghĩa là toàn bộ quá trình từ khi tạo ra đến khi hủy. Sau đây là tổng quan về vòng đời của servlet:

  • Servlet được khởi tạo bằng cách gọi phương thức init ().
  • Phương thức servlet service() được gọi để xử lý yêu cầu của khách hàng.
  • Servlet được hủy bằng cách gọi phương thức destroy().
  • Cuối cùng, servlet được thu thập bởi bộ sưu tập rác của JVM.

Dưới đây là chi tiết về các phương thức trong vòng đời của servlet.


Nội dung chính

  • Phương thức init()
  • Phương thức service()
  • Phương thức doGet()
  • Phương thức doPost()
  • Phương thức destroy()
  • Sơ đồ kiến trúc

Phương thức init()

Phương thức init() được gọi chỉ một lần để khởi tạo servlet. Vì vậy, nó được sử dụng cho khởi tạo một lần, giống như với các phương thức init của applet.

Servlet thường được tạo khi người dùng lần đầu tiên gọi một URL tương ứng với servlet, nhưng bạn cũng có thể chỉ định rằng servlet được tải khi máy chủ được khởi động lần đầu tiên.

Khi một người dùng gọi một servlet, một thể hiện duy nhất của mỗi servlet sẽ được tạo ra, với mỗi yêu cầu của người dùng tạo ra một luồng mới được trao cho doGet hoặc doPost. Phương thức init() chỉ đơn giản tạo hoặc tải một số dữ liệu sẽ được sử dụng trong suốt vòng đời của servlet.

Định nghĩa phương thức init giống như thế này:

public void init() throws ServletException {
   // Initialization code...
}

Phương thức service()

Phương thức service() là phương thức chính để thực hiện nhiệm vụ thực tế. Bộ chứa servlet (tức là web server) gọi phương thức service() để xử lý các yêu cầu đến từ khách hàng (trình duyệt) và trả về kết quả.

Mỗi lần máy chủ nhận được một yêu cầu cho một servlet, máy chủ sẽ tạo ra một luồng mới và gọi phương thức service(). Phương thức service() kiểm tra kiểu yêu cầu HTTP (GET, POST, PUT, DELETE, v.v.) và gọi các phương thức doGet, doPost, doPut, doDelete, vv.

Đây là khai báo của phương thức này:

public void service(ServletRequest request, ServletResponse response) 
   throws ServletException, IOException {
}

Phương thức service() được gọi bởi phương thức container và service gọi các phương thức doGet, doPost, doPut, doDelete, vv. Vì vậy, bạn không cần phải làm gì với phương thức service() nhưng bạn phải ghi đè phương thức doGet() hoặc doPost() phụ thuộc vào loại yêu cầu bạn nhận được từ khách hàng.

Các phương thức doGet() và doPost() là các phương thức được sử dụng phổ biến nhất để đáp ứng yêu cầu của máy khách. Dưới đây là khai báo của hai phương thức này.


Phương thức doGet()

Một yêu cầu GET xuất phát từ một yêu cầu bình thường cho một URL hoặc từ một HTML Form mà không có METHOD chỉ định và nó phải được xử lý bằng phương thức doGet().

public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
   // Servlet code
}

Phương thức doPost()

Yêu cầu POST xuất phát từ một HTML Form cụ thể mà có METHOD là POST và nó phải được xử lý bởi phương thức doPost().

public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
   // Servlet code
}

Phương thức destroy()

Phương thức destroy() chỉ được gọi một lần vào cuối chu kỳ sống của một servlet. Phương thức này cho phép servlet đóng kết nối cơ sở dữ liệu, chặn các luồng chạy gầm, viết các cookie hoặc đếm số lượt truy cập và thực hiện các hoạt động dọn dẹp khác.

Sau khi phương thức destroy() được gọi, đối tượng servlet được đánh dấu để thu gom rác. Phương thức destroy() được định nghĩa như sau:

public void destroy() {
   // Finalization code...
}

Sơ đồ kiến trúc

Hình dưới đây mô tả vòng đởi của servlet điển hình:

  • Đầu tiên các yêu cầu HTTP đến máy chủ được ủy quyền cho bộ chứa servlet.
  • Bộ chứa servlet tải servlet trước khi gọi phương thức service().
  • Sau đó, servlet container xử lý nhiều yêu cầu bằng cách sinh ra nhiều luồng, mỗi luồng thực hiện service() của một thể hiện duy nhất của servlet.
Vòng đời của Servlet
Cài đặt môi trường Servlet
Tạo ứng dụng Servlet trên Eclipse

Recent Updates

Servlet là gì?Cài đặt môi trường ServletHTTP Status CodesPage redirect trong ServletRequest trong ServletResponse trong ServletSession tracking trong ServletTạo ứng dụng Servlet trên EclipseVí dụ đọc tất cả Parameters của Form trong ServletVí dụ phương thức GET sử dụng FormVí dụ phương thức GET sử dụng URLVí dụ phương thức POST sử dụng FormSắp Tết 2026 Rồi! - Còn bao nhiêu ngày nữa là đến tết 2026?

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn
Danh Sách Bài Học

Học Java | Hibernate | Spring
Học Excel | Excel VBA
Học Servlet | JSP | Struts2
Học C | C++ | C#
Học Python
Học SQL

Bài Tập Có Lời Giải

Bài tập Java
Bài tập C
Bài tập C++
Bài tập C#
Bài tập Python
Ví dụ Excel VBA

Câu Hỏi Phỏng Vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml