Cấu trúc Struts 2



Struts 2 là một MVC 2 Framework, được tổ hợp bởi rất nhiều thành phần. Mẫu MVC trong Struts 2 bao gồm 5 thành phần cốt lõi, đó là:

  • Action

  • Interceptor

  • Value Stack / OGNL

  • Result type

  • Các công nghệ View

Từ các thành phần cốt lõi trên, phần dưới sẽ trình bày cho các bạn về Struts Flow theo hai cách, đó là Basic Flow và Standard Flow. Qua đó giúp bạn có cái nhìn khái quát về vòng đời của Struts.

Struts 2 Basic Flow

Bạn theo dõi sơ đồ dưới đây:

Struts 2 Basic Flow

Các bước trên có thể diễn giải như sau:

1. Người dùng gửi một yêu cầu (request) cho Action.

2. Controller triệu hồi ActionInvocation

3. ActionInvocation triệu hồi mỗi Interceptor và Action

4. Một kết quả được tạo ra

5. Kết quả được gửi lại ActionInvocation

6. Một HttpServletResponse được tạo ra

7. Phản hồi (response) được gửi tới người dùng

Struts 2 Standard Flow (Cấu trúc Struts 2)

Bạn theo dõi sơ đồ sau:

Struts 2 Flow
Quảng cáo

1. Người dùng gửi một yêu cầu (request) cho Action

2. Container ánh xạ request này trong web.xml file và lấy tên lớp của Controller

3. Container triệu hồi Controller (StrutsPrepareAndExecuteFilter hoặc FilterDispatcher). Bắt đầu từ Struts 2.1, đó là lớp StrutsPrepareAndExecuteFilter

4. Controller lấy thông tin cho Action từ ActionMapper

5. Controller triệu hồi ActionProxy

6. ActionProxy lấy thông tin của Action và Interceptor Stack từ Configuration Manager mà lấy thông tin từ struts.xml file

7. ActionProxy chuyển tiếp request tới ActionInvocation

8. ActionInvocation triệu hồi mỗi Interceptor và Action

9. Một kết quả được tạo ra

10. Một kết quả được tạo ra

11. Một HttpServletResponse được tạo ra

12. Phản hồi (response) được gửi tới người dùng

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Follow fanpage của team https://www.facebook.com/vietjackteam/ hoặc facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.

Các bài học Struts 2 phổ biến khác tại VietJack:




Tài liệu giáo viên