Thursday, July 17, 2014

Components of Struts 2 (Thành phần của Struts 2)

 1. Giới thiệu về Struts 2:

   - Apache Struts là một mã muốn mở được sử dụng để phát triển trên nền Java EE Web.
   - Được phát triển trên nền tảng của mô hình MVC.
   - Có các tập hợp thư viện và công cụ thích hợp để phát triển ứng dụng.



Minh họa về sơ đồ hoạt động của Struts


- Đặc điểm của nó là: tách biệt các thành phần (View, Model).
- Và các thành phần phụ thuộc ít với nhau.
- Giúp phát triển tầng giao diện Java Web trên mô hình MVC.

* Ưu và nhược điểm:

 Dù các thành phần trong Struts có thể dễ dàng và rành mạch hơn nhưng đôi khi chúng ta hay gặp lỗi nhỏ trong việc đặt tên các package trong project.

Trích từ bài viết: Framework and Struts

2. Cách hoạt động:

Ngày hôm nay chúng ta sẽ tìm hiểu hơn về cách làm việc và hoạt động, cách sử dụng Struts và một số diễn biến liên quan.

  a. Implementing Actions (Cách thực hiện với Actions)


- Khi người dùng (User hoặc Client) muốn gửi yêu cầu của mình lên server một câu lệnh nào đó thì phải họ sẽ phải gửi yêu cầu đến một actions tuỳ vào giá trị trả về. Tiếp theo, View sẽ trả về giá trị hiển thị với đúng yêu cầu từ chính người dùng

- Actions trong trường hợp này sẽ đóng vai trò xử lí các thông tin mà tương tác với người dùng.

 - Trong câu trên khi nhắc tới yêu cầu từ người dùng sẽ được truyền tới đâu? Thì đó chính là tới Controller, tại đây nó sẽ sẽ đọc thông tin từ Struts.xml để biết được thông tin cấu trúc config của Struts. 

 - Nếu giải quyết xong nó sẽ gọi đến actions, tùy thuộc vào giá trị trả về thì controller sẽ hiển thị thông tin tương ứng với yêu cầu người dùng qua View.

   b. Implementing Interceptor (Thực hiện với Interceptor) 



- Interceptor đóng vai trò và hoạt động gần tương tự như một filter. (Filter là gì?)

- Interceptor được gọi đến trước khi thông tin đi đến một actions.

- Chúng ta có thể tự tạo interceptor cho từng actions riêng biệt.


   c. Value Stack

-Là nơi chứa tất cả các thông tin mà action, view cần như session request, hay các thuộc tính trong action, model...



  d. Object-Fraph Navigation (OGNL)

Object-Fraph Navigation (OGNL) , nói đơn giản thì đây là một ngôn ngữ mạnh mẽ để giúp chúng ra có thế lấy dữ liệu.


  - OGNL có thể giúp bạn gửi dữ liệu và chuyển đổi.

  - OGNL có định dạng giống với một ngôn ngữ ở JSP.




  e.  Type Conversion và Validation


-Struts2 có thể hỗ trợ việc validation cho người dùng (Client) và Server.

-Nó sẽ cung cấp và thực hiện khai báo qua tập tin xml.


3. Nhận xét:

  Như đã nhắc ở trên, Struts 2 giống với mô hình MVC, có chăng là sự thay đổi ở các thành phần. Và như mình đã nhắc ở trên, khả năng hỗ trợ và ứng dụng của Struts 2 trong việc thiết kế giao diện thực sự rất tuyệt vời.

No comments:

Post a Comment