2011-10-14 27 views
6

GenericServlet triển khai giao diện ServletConfig có nghĩa là tất cả các chức năng giao diện có thể được gọi từ chức năng init() của GenericServlet. Với bối cảnh này, tại sao hộp chứa Servlet gửi đối tượng ServletConfig đến phương thức init()? Tôi cũng muốn biết nếu đối tượng ServletConfig được chuyển đến GenericServlet.init(ServletConfig) khác với đối tượng GenericServlet.Tại sao ServletConfig obj truyền cho init() của GenericServlet khi lớp thực hiện giao diện?

Kính trọng, Ravi

Trả lời

3

Các GenericServlet thực hiện các ServletConfig phương pháp đơn giản bằng cách ủy thác cho các đối tượng cấu hình truyền cho phương thức init. Vì vậy, nó thực hiện ServletConfig chỉ đơn giản là để thuận tiện - nó sau đó chỉ đơn giản là đại biểu. Vì vậy, thay vì gọi số getServletConfig().getInitParameter() bạn có thể gọi getInitParameter()

+0

Cảm ơn Bozho. Nếu GenericServlet triển khai ServletConfig, thông thường sẽ có một người tiêu dùng chỉ biết GenericServlet như một đối tượng ServletConfig. Vì các nhà phát triển servlet không xem xét các đối tượng GenericServlet như các đối tượng ServletConfig, tôi giả định rằng một số mô-đun Servlet Container có tham chiếu ServletConfig tới GenericServlet. Bất kỳ phần nào của các giả định của tôi có hợp lệ không? –

+0

thùng chứa servlet có một cài đặt khác của ServletConfig, đây là thực thi thực tế được sử dụng. nó chỉ chuyển nó tới servlet chung – Bozho

Các vấn đề liên quan