Tải bản đầy đủ (.pdf) (27 trang)

Struts framework 2

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.36 MB, 27 trang )




Struts Framework





































Struts Framework

I- Căn bản về Struts


1.Struts :


2.Tổng quan và mục tiêu thiết kế:


3.Các thành phần cơ bản của Struts
Framework cơ sở
Tiles plugin
Validator plugin
4. Tham khảo:


II-Ví dụ Login sử dụng Struts 1.x với IDE Eclipse



1.Các công cụ cần thiết:


1.1 Eclipse:
1.2 Struts:
2. Làm ví dụ Login


2.1 Tạo Database 2.2 Tạo
Project với Eclipse
2.3 Cấu hình thư viện:
2.4 Cấu hình taglib(tag-lib definition) 2.5
Tạo file struts-config.xml
2.6 Cấu hình Web.xml :
2.7 Tạo các trang JSP:
2.7.1 Trang Index.jsp
2.7.2Trang Result.jsp
2.7.3 Trang Failed.jsp
2.8 Các qui tắc chuyển trang
2.8.1 Tạo ActionFormBean
2.8.2 Tạo Action cho việc xử lý dữ liệu
2.8.3 Tạo kết nối tới cơ sở dữ liệu:
2.8.4 Cấu hình file struts-config.xml:
2.9 Thực thi

I- Căn bản về Struts
1.Struts :




Struts là một framework web mã nguồn mở được phát triển cho Java EE web
application. Struts sử dụng và mở rộng Java Servlet API theo hướng kiến trúc
MVC(model-view-controller) .

MVC Design
Pattern.pdf

Struts được khởi xướng bởi Craig McClanahan và sau đó được bảo trợ bởi
Apache Foundation vào tháng 5 năm 2000. Vào thời gian đầu Struts được biết thông
qua Apache Jakarta Project hay còn gọi là Jakarta Struts nhưng dần sau đó chuyển
thành project chính của Apache vào năm 2005.
2.Tổng quan và mục tiêu thiết kế:
Trong một ứng dụng web Java EE truyền thống, client sẽ gửi thông tin đến
server dưới dạng một webform. Những thông tin này sẽ được chuyển đến
JavaServlet xử lí, tương tác với cơ sở dữ liệu và trả về dưới dạng các mã html. Hoặc
có một cách khác là sử dụng các trang JSP kết hợp cả các mã HTML và mã Java để
thực thi và hiển thị. Cả hai cách này đều sớm bộc lộ một vài nhược điểm đặc biệt là
trong các dự án lớn. Trong quá trình phát triển bằng Jsp/Servlet thì người lập trình
cũng đã mất rất nhiều khó khăn trong việc lấy các dữ liệu theo từng request, giao
tiếp giữu các trang, quan hệ giữa các phần xử lý logic và phần hiển thị chưa thật sự
phân bố rõ ràng gây rất nhiều khó khăn trong việc phát triển cũng như bảo trì.
Mục tiêu thiết kế của Struts là sự phân tách rõ ràng giữa các thành
phần(component) trong mô hình MVC. Struts ra đời bằng việc kế thừa và mở rộng
các Java Servlet API nhưng theo các hướng đối tượng hơn theo mẫu thiết kế MVC.
Struts phân chia việc xử lý theo dạng từng action một và tách biệt phần xử lý và
phần hiển thị ra nên việc phát triển tương đối thuận lợi và dễ dàng hơn.
 Model: Một đối tượng hoặc một tập hợp các đối tượng biểu diễn cho phần dữ
liệu của chương trình. Struts framework không cung cấp bất cứ đặc trưng hay
ràng buộc xác định nào trong việc phát triển Model layer trong ứng dụng của
bạn. Khi nhìn thoáng qua lần đầu, điều này có vẻ hơi kỳ quặc, vì Struts được

thiết kế để xây dựng các ứng dụng MVC. Tuy nhiên, nó lại nắm giữ một đặc
trưng thiết kế chính của Struts và là một điểm lợi. Vì không bắt buộc Model
layer phải được xây dựng như thế nào, Struts mang lại cho bạn sự mềm dẻo đẻ
sử dụng bất cứ cách tiếp cận hay công nghệ nào để xây dựng Model layer, chúng
có thể là EJB, JDO hay mẫu DAO.
 View: Đây là phần giao diện với người dùng, Struts sử dụng các ActionForm để
triệu gọi các phương thức (getter, setter) để lấy các thông tin dưới dạng form từ
các trang JSP.



 Controller :Trong Struts Controller được viết dưới dạng các ActionServlet. Để
hiểu hơn về cách thức hoạt động của Framework Struts, ta có thể nhìn mô hình
xử lí như sau:


1. Trình duyệt tạo một request tới ứng dụng Struts sẽ được xử lý bới
ActionServlet (Controller).
2. ActionServlet (Controller) gọi subclass của ActionForm (View), do ta viết,
với dữ liệu form HTML và triệu gọi phương thức validate() của nó (nếu có).
3. ActionServlet (Controller) gọi subclass của Action do ta viết để xử lý
(Controller).
4. Subclass của Action (Controller) đó sẽ tương tác với model component và
chuẩn bị dữ liệu cho để hiển thị.
5. Sau đó subclass của Action (Controller) đó sẽ chuyển điều khiển tới JSP
(View).
6. JSP (View) sử dụng dữ liệu nhận được để trả thông tin kết quả về cho trình
duyệt.



3.Các thành phần cơ bản của Struts
Struts là một tập hợp các thư viện Java và có thể chia ra làm các nhóm sau:
+ Framework cơ sở
+ Thư viện thẻ JSP
+ Tiles plugin
+ Validator plugin




Framework cơ sở
Framework cơ sở cung cấp các tính năng MVC cốt lõi. Nền tảng của framework cơ
sở là Controller servlet: ActionServlet. Phần còn lại của framework cơ sở bao gồm
các lớp cơ sở mà ứng dụng của bạn sẽ extend và các class tiện ích. Nổi bật nhát
trong các lớp cơ sở là lớp Action và lớp ActionForm. Lớp Action được sử dụng bởi
ActionServlet để sử lý các request xác định. Lớp ActionForm được sử dụng để
capture dữ liệu từ các HTML form và được sử dụng để chuyển dữ liệu trở lại View
để generate response.

Thư viện thẻ JSP
Struts đưa ra các thư viện thẻ để hỗ trợ việc lập trình View logic trong JSP. Các thư
viện thẻ JSP cho phép các JSP author sử dụng các thẻ giống HTML.
+ HTML: Sử dụng để generate các THML form tương tac với Struts API
+ Bean: Sử dụng để làm việc với các Java bean object trong JSP
+ Logic: Sử dụng để implement các logic điều kiện đơn giản trong JSP +
Nested: Sử dụng để cho phép các mức nested tùy ý

Tiles plugin
Tiles là một JSP template framework giúp thuận tiện cho việc tái sử dụng mã
HTML.


Validator plugin
Validator là một framework với khả năng thực hiện xác nhận tính hợp lệ của dữ liệu
ở cả phía server và client.
4. Tham khảo:
1.
2.t/struts/

II-Ví dụ Login sử dụng Struts 1.x với IDE Eclipse
1.Các công cụ cần thiết:
1.1 Eclipse:
Eclipse là một môi trường phát triển tích hợp cho Java, được phát triển ban đầu
bởi IBM, và hiện nay bởi tổ chức Eclipse. Ngoài Java, Eclipse còn hỗ trợ nhiều



ngôn ngữ lập trình khác như PHP, C, C++, C#, Python, HTML, XML, JavaScript
khi dùng thêm trình bổ sung (plug-in).
Download phiên bản : Eclipse IDE for Java EE Developers.
Giải nén ra thư mục nào đó: VD: D:\Eclipse
1.2 Struts:
Download Struts 1.3_all 44MB.
2. Làm ví dụ Login
2.1 Tạo Database
Dùng công cụ bất kì( ở đây là HeliMySql) tạo một database với các tham số
sau:






Tạo cơ sở dữ liệu: strutsexample , table account

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×