You are working on a JSP MVC application where multiple views need to display the same set of data. Discuss how you would avoid code duplication and ensure a consistent data presentation across different views.

4 phương ánCó giải thích

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở
Đáp án đúng: "Implement a shared DataProvider class in the Model.". Khi nhiều trang cần cùng một bộ dữ liệu, cách đúng với MVC là đẩy phần lấy dữ liệu xuống Model thành một lớp dùng chung, rồi controller gọi lớp đó và đặt kết quả vào phạm vi request hoặc application cho các View đọc; sửa một nơi là mọi trang đổi theo, và cách trình bày nhất quán vì nguồn chỉ có một. Lựa chọn "Duplicate the data retrieval logic in each JSP page." chính là trùng lặp mã mà câu hỏi muốn tránh, đổi truy vấn phải sửa nhiều tệp và rất dễ lệch nhau. Lựa chọn "Use global variables within the JSP pages to store and share data." đặt trạng thái vào biến dùng chung của trang, vừa phá ranh giới tầng vừa không an toàn khi nhiều yêu cầu chạy song song trên cùng một đối tượng servlet. Lựa chọn "Embed the data retrieval logic within each individual JSP page." nhúng mã truy cập dữ liệu vào View, biến trang hiển thị thành nơi chứa nghiệp vụ và vẫn lặp ở từng trang.

Cùng phần 5

Xuất hiện trong 1 bộ đề