Thứ Sáu, 18 tháng 7, 2014

Describe features, architecture, disadvantage and advantage of Struts 2

Describe features, architecture, disadvantage and advantage of Struts 2

The mvc/ struts2 architecture 

     Khi người dung request đến server. request sẽ được chuyển tới controller. Controller sẽ có các thành phần là dispatcher filter và các interceptor. Sau đó tuy thuộc vào config và người dùng muốn gọi đến action nào thi controller sẽ truyền dữ liệu từ người dùng vào trong action và gọi đến phương thức execute của action. Sau đó action trả giá trị cho interceptor. Tuy vào giá trị tra về controller sẽ xem result là gì, nó sẽ forward đến một file jsp .hoặc một file ở định dạng khác. Trong jsp này ta có thể dùng thẻ jsp hoặc thể trong strust2. Code trong trang jsp có thể lấy giá trị trong value state, nó sẽ lấy giá trị từ value stack khi cần dùng.


Kiến trúc chi tiết của strust2 
Quá trình nhạn request và trả response trong struts trải quả rất nhiều bước khác ngoài những bước phần lập trình viên phải làm  đế thu được reqponse trả về cho người dùng
Các thành phần chính:
Action:
 action là các đoạn code cơ bản đươc dựng sẵn của struts
Interceptor:
Đóng vai trò quan trọng trong việc xử lý exception., validate file uploading,, life cycle callbacks
Cùng cấp các tiền xử lý và sau xử lý cho các action
Value stack/OGNL
OGNL viết tắc của  Object Graph Navigational Language , cung cấp cách thức để truy xuất lấy dữ liệu của đối tượng trong value stack thông qua các thẻ được cung cấp cho JSP, velocity, FreeMarker
Result types::
Strust2 cung cấp nhiều kiểu results như (dispatcher, redirect, etc...)
Results/view technologies
Về phần view có các công nghệ khác co thể thay thế trang jsp trong ứng dụng của struts là Velocity, FreeMarket, XSLT transformation 

Ưu điểm:
  • Strust cung cấp khả này có thể dùng nhiều loại view khác nhau It phải config nhiều
  • dễ dàng dùng tag và chỉnh sửa
  • Hỗ trợ plugin
  • Đo thông tin của ứng dụng
  • Có khả năng mở rộng
  • Hỗ trợ Ajax
  • Tương tác với các framework khác
  • Hỗ trợ thẻ
Nhược điểm :
  • Để sử dụng MVC trong struts ta phải có hiểu biết về jsp, servlet api và về framework
  • Ít tài liêu hơn các công nghệ khác
  • Với ứng dụng strutst, có nhiều thứ được làm sẽ chạy đăng sau hơn là môt ứng dụng web java cơ bản, cung gây khó khăn cho việc hiểu framework này một các tường tần, có thể nói là it trau chuốt hơn
 Các framework có thể thay thể struts
 Bên các truts2 ta còn có các framework như :Stxx, JSF, Spring





 



Không có nhận xét nào:

Đăng nhận xét