Hungkin’s Blog

Tìm hiểu về Struts 2 (P.1)

Posted by hungkin™ on 08/05/2009

1.KIẾN TRÚC CỦA STRUTS 2
Struts và webwork đã kết hợp với nhau để phát triển nên Struts 2 Framework. Struts 2 Framework rất thích hợp và dễ dàng mở rộng để phát triển các ứng dụng web với mức độ khác nhau

1.1.Vòng đời của các yêu cầu trong ứng dụng Struts 2

– Người sử dụng gửi yêu cầu đến server để yêu cầu một số tài nguyên của ứng dụng
– Bộ điều khiển lọc (FilterDispatcher) xem xét yêu cầu và sau đó xác định một Action thích hợp
– Các bộ chặn (Interceptors) được ứng dụng: các cấu hình bộ chặn áp dụng cho các chức năng chung như: luồng công việc, thẩm định, tải file … được tự động ứng dụng vào yêu cầu
– Thực thi Action: sau khi phương thức action được thực thi để thực hiện các hoạt động liên quan đến cơ sở dữ liệu như sắp xếp hoặc nhận dữ liệu từ cơ sở dữ liệu
– Sinh kết quả
– Sau đó kết quả yêu cầu được trả về thông qua bộ chặn theo chiều ngược lại. Kết quả trả về cho phép chúng ta thực hiện thu dọn hoặc thêm quá trình xử lý
– Hiển thị kết quả cho người sử dụng: việc điều khiển cuối cùng được trả về cho trình chứa servlet, nó sẽ gửi kết quả trả về cho trình duyệt của người sử dụng

1.2.Kiến trúc Struts 2

– Action ContextCleanUp filter: là một tùy chọn và nó được sử dụng khi tích hợp với các công nghệ khác như SiteMash Plugin
– FilterDispatcher: tiếp đến, FilterDispatcher (bộ điều khiển lọc) được gọi, nó quay lại sử dụng ActionMapper để xác định Action nào được triệu gọi. Nếu action được yêu cầu được triệu gọi thì FilterDispatcher ủy nhiệm việc điều khiển lại cho ActionProxy.
– ActionProxy:ActionProxy nhận sự giúp đỡ từ bộ quản lý cấu hình file (Configuration Files manager), được khởi tạo từ file struts.xml. Sau đó ActionProxy tạo ra một ActionInvocation, thực thi (implement) từ mẫu lệnh. ActionInvocation xử lý triệu gọi bộ chặn (Interceptors) nếu nó được cấu hình và sau đó triệu gọi Action. ActionInvocation tìm kiếm kết quả thích hợp, sau đó kết quả được thực thi, nó triệu gọi việc sinh ra trang các JSP hoặc các mẫu.
Sau đó, các Interceptor được thực thi một lần nữa theo thứ tự ngược lại. Việc trả về kết quả cuối cùng thông qua các bộ lọc được cấu hình trong file web.xml. Nếu bộ lọc ActionContextCleanUp được cấu hình, thì FilterDispatcher không dọn dẹp ThreadLocal ActionContext. Nếu bộ lọc ActionContextCleanUp không có thì FilterDispatcher sẽ dọn dẹp tất cả các ThreadLocal tồn tại

1.3.Tải Struts 2
– Tải gói Struts 2: http://struts.apache.org
– Tải Tomcat: http://tomcat.apache.org/download-60.cgi

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

 
%d bloggers like this: