Tôi là người mới bắt đầu trong Spring MVC. Tôi không hiểu rõ bộ điều hợp xử lý. Bộ điều hợp bộ xử lý là gì và khi nào tôi sử dụng bộ điều hợp?Bộ điều hợp bộ xử lý trong mvc mùa xuân là gì?
Trả lời
Bắt đầu here và xem điều đó có hữu ích hay không; nếu không, hãy hỏi một câu hỏi cụ thể hơn. Ngoài ra, this section tài liệu Spring thảo luận về các bộ điều hợp mặc định và cách chúng liên quan đến cấu hình chú thích.
Một thời gian ngắn, bộ điều hợp xử lý quyết định bộ điều khiển (và phương thức nào) để gọi yêu cầu.
A HandlerMapping chỉ cần ánh xạ phương thức tới URL. Hầu hết người mới bắt đầu không sử dụng trực tiếp đối tượng này, nhưng thay vào đó hãy sử dụng số RequestMapping. Kiểu trả về của phương thức được ánh xạ (thường) xác định khung nhìn SpringMVC sẽ sử dụng để trả về một phản hồi.
Thí dụ, RequestMapping sau sẽ tạo ra một HandlerMapping cho các yêu cầu GET để "/" hoặc "/ home" để gọi phương pháp này:
@RequestMapping(value={"/", "/home"}, method=RequestMethod.GET)
public String getHome() {
return "homepage";
}
Phương pháp này trả về một tên chuỗi của một quan điểm, mà sẽ thường được giải quyết thành "/WEB-INF/views/homepage.jsp" (nhưng điều đó phụ thuộc vào ViewResolver tất nhiên)
Chỉ cần một fyi để bắt đầu: bạn có thể thêm các đối tượng khác nhau mà bạn có thể cần làm tham số cho phương pháp (như Locale, HttpServletRequest, v.v.) Xem javadoc RequestMapping để biết thêm thông tin.
Ông hỏi về HandlerAdapter, bạn đã giải thích HandlerMapping –
A HandlerMapping
ánh xạ phương thức tới URL, do đó, DispatcherServlet
biết phương thức nào cần được gọi bởi một yêu cầu cụ thể. Sau đó, DispatcherServlet
sử dụng một số HandlerAdapter
để gọi phương thức.
Tại sao DispatcherServlet không gọi phương thức trực tiếp?
Vì có nhiều cách để gọi phương thức, như chú thích, xml, v.v. HandlerAdapter
tách cặp DispatcherServlet
và các tác vụ được gọi.
Bạn có thể tìm Bộ điều hợp trong HandlerAdapter và phần tên đó đến từ mẫu Bộ điều hợp. Adapter giống như một cầu nối giữa hai đối tượng và HandlerAdapter là một cầu nối giữa đối tượng xử lý và servlet dispatcher.
Như bạn có thể thấy từ mã nguồn HandlerAdapter dưới đây được lấy từ tài liệu Spring, có một phương thức, phương thức xử lý với kiểu trả về ModelAndView. Mỗi HandlerAdapter sẽ thực hiện phương thức này để ủy nhiệm các đối tượng xử lý HttpServletRequest và HttpServletResponse cho đối tượng xử lý để đối tượng xử lý sẽ thực thi logic ứng dụng bằng cách sử dụng HttpServletRequest/Response này.
public interface HandlerAdapter {
//Check if controller is supported
boolean supports(Object handler);
//handle request
ModelAndView handle(HttpServletRequest rqst,
HttpServletResponse rsp,
Object handler) throws Exception;
Thực thi logic ứng dụng này tạo mô hình và chế độ xem. Khung nhìn có thể ở dạng dạng xem của đối tượng String hoặc View. Mô hình giữ dữ liệu sẽ được sử dụng để hiển thị chế độ xem. HandlerAdapter sẽ bao bọc mô hình và xem trong đối tượng ModelAndView. Đó là công việc servatcher dispatcher để xử lý đối tượng ModelAndView.
Điều phối viên servlet không biết về đối tượng xử lý và được giải phóng khỏi xử lý trực tiếp logic ứng dụng. Đối tượng handler cũng giảm bớt việc chuyển đổi mô hình và xem thành đối tượng ModelAndView vì HandlerAdapter sẽ thực hiện công việc chuyển đổi đó.
- 1. xử lý ngoại lệ cho bộ lọc vào mùa xuân
- 2. Làm thế nào để đăng ký bộ chặn chặn xử lý với mvc mùa xuân 3.0?
- 3. Xử lý ngoại lệ MVC mùa xuân với HandlerExceptionResolver
- 4. Xử lý ngoại lệ trong Bộ điều khiển (ASP.NET MVC)
- 5. Mùa xuân 3 MVC truy cập HttpRequest từ bộ điều khiển
- 6. Servatcher Dispatcher trong mùa xuân là gì?
- 7. Sử dụng Dịch vụ và DAO trong bộ điều khiển mvc mùa xuân
- 8. Trả lại tệp từ Bộ điều khiển trong Mùa xuân
- 9. Làm thế nào để xử lý DataIntegrityViolationException trong mùa xuân?
- 10. Tích hợp mùa xuân
- 11. Kiểm tra tích hợp bộ điều khiển MVC mùa xuân 3 - Đưa hiệu trưởng vào phương thức
- 12. nhà cung cấp xác thực mùa xuân VS Bộ lọc xử lý xác thực
- 13. Gracefully xử lý HttpSession hết hạn trong mùa xuân WebFlow
- 14. Bộ nhớ đệm mùa xuân so với bộ nhớ đệm
- 15. Trường ẩn trong mùa xuân MVC
- 16. Xử lý ngoại lệ của bộ lọc và bộ lọc
- 17. Trường hợp và cách xử lý các trường hợp ngoại lệ mùa xuân + hibernate?
- 18. Bộ điều khiển MVC Spring - getPathInfo() là null
- 19. công cụ mùa xuân bộ dự án mvc mùa xuân - 22 vấn đề ngay sau khi tạo
- 20. Cách "Rails" để xử lý một số lượng lớn bộ điều khiển là gì?
- 21. Trong mvc mùa xuân làm thế nào để có được đường dẫn ngữ cảnh trong bộ điều khiển
- 22. Ý nghĩa của abstract = "true" trong mùa xuân là gì?
- 23. Xử lý lỗi trong Ajax trong bộ điều khiển Symfony2
- 24. "Bộ điều hợp" hoặc "bộ điều hợp"?
- 25. Bộ điều khiển nào là HandlerMapping trong Spring MVC?
- 26. lỗi toàn cầu xử lý (bên ngoài của bộ điều khiển) trong ASP.NET MVC
- 27. chế độ dev trong mùa xuân MVC
- 28. Không có bộ chuyển đổi cho ngoại lệ xử lý
- 29. Xử lý lỗi trong MVC
- 30. Kiểm tra MVC mùa xuân với MockMvc
Liên kết bị hỏng. – Vishnu
@Vishnu Những điều thay đổi trong sáu năm tôi đoán. –