TRƯỜNG ĐẠI HC KHOA HC T NHIÊN
KHOA CÔNG NGH THÔNG TIN
BÁO CÁO SEMINAR STRUTS 2
B môn Chuyên Đề Java
Giáo Viên Hướng Dn
Thy : Ngô Bá Nam Phương
Nhóm Thc Hin
MSSV H Tên
0512007 Lê Văn Bình
0512337 Trương Trung Thế
0512386 Lê Cung Tưởng
Trường Đại Hc Khoa Hc T Nhiên
Khoa Công Ngh Thông Tin
Struts2 Page2
Mc lc
I. Gii thiu mô hình MVC ...................................................................................................................... 5
1. Li ích ca vic s dng mô hình MVC ........................................................................................... 6
II. Gii thiu v Struts 2 ............................................................................................................................ 6
1. Gii thiu struts 2 .............................................................................................................................. 6
2. Ích li ca Struts 2 Framework ......................................................................................................... 6
III. Kiến trúc và hot động ca Struts 2 ...................................................................................................... 8
1. Kiến trúc ca Struts 2 framework ..................................................................................................... 8
2. Quá trình x lý request trong Struts2 framework ............................................................................. 9
IV. Cu hình Struts 2 trên Netbeans .......................................................................................................... 10
1. Cu hình struts 2 project ................................................................................................................. 10
2. Khai báo Struts 2 ............................................................................................................................. 12
a. Khai báo dùng xml ...................................................................................................................... 13
b. Khai báo dùng Annotation .......................................................................................................... 15
V. Actions và Results ............................................................................................................................... 16
1. Actions ............................................................................................................................................ 16
2. Results ............................................................................................................................................. 16
Các loi results struts h tr sn ......................................................................................................... 16
a. Depatcher Result ......................................................................................................................... 17
b. Redirect Action Result ................................................................................................................ 17
c. Chain Result ................................................................................................................................ 18
d. Redirect Result ............................................................................................................................ 18
e. FreeMaker Result ........................................................................................................................ 18
Trường Đại Hc Khoa Hc T Nhiên
Khoa Công Ngh Thông Tin
Struts2 Page3
f. Velocity Result ............................................................................................................................ 19
g. Plain Text Result ......................................................................................................................... 19
h. Tiles Result ................................................................................................................................. 19
i. HttpHeader Result ....................................................................................................................... 20
j. Stream Result .............................................................................................................................. 20
k. XSL Result .................................................................................................................................. 21
l. Global Result .............................................................................................................................. 21
m. Custom Result: ........................................................................................................................ 21
VI. Gii Thiu Interceptors ....................................................................................................................... 22
1. Danh sách các Interceptor dng sn ................................................................................................ 22
2. Custom mt Interceptor .................................................................................................................. 24
VII. Các Tags trong struts 2 ....................................................................................................................... 25
1. FORM TAGS .................................................................................................................................. 26
a. Using Struts Tags ........................................................................................................................ 26
b. Common Attributes ..................................................................................................................... 26
c. The Form Tag ............................................................................................................................. 27
d. The textfield, password, hidden Tags ......................................................................................... 27
e. The submit Tag ........................................................................................................................... 28
f. The reset Tag ............................................................................................................................... 28
a. The label Tag .............................................................................................................................. 28
b. The head tag ................................................................................................................................ 29
c. The texterea tag .......................................................................................................................... 29
d. The checkbox Tag ....................................................................................................................... 29
e. The list, listKey, and listValue attributes .................................................................................... 29
Trường Đại Hc Khoa Hc T Nhiên
Khoa Công Ngh Thông Tin
Struts2 Page4
f. The radio Tag .............................................................................................................................. 29
g. The select Tag ............................................................................................................................. 30
h. Select Option Grouping with optgroup ....................................................................................... 30
i. Select Option Grouping with optgroup ....................................................................................... 30
j. The combobox Tag ..................................................................................................................... 31
k. The updownselect Tag ................................................................................................................ 31
2. GENERIC TAGS ............................................................................................................................ 32
a. The property Tag ......................................................................................................................... 32
b. The a Tag .................................................................................................................................... 32
c. The action Tag ............................................................................................................................ 32
d. The param Tag ............................................................................................................................ 33
e. The bean Tag ............................................................................................................................... 33
f. The date Tag ............................................................................................................................... 34
g. The include Tag .......................................................................................................................... 34
h. The set Tag .................................................................................................................................. 34
i. The push Tag ............................................................................................................................... 35
j. The url Tag .................................................................................................................................. 35
k. The if, else, and elseIf Tags ........................................................................................................ 36
l. The iterator Tag ........................................................................................................................... 36
m. The append Tag ....................................................................................................................... 37
n. The merge Tag ............................................................................................................................ 37
o. The generator Tag ....................................................................................................................... 37
p. The sort Tag ................................................................................................................................ 38
q. The subset Tag ............................................................................................................................ 38
Trường Đại Hc Khoa Hc T Nhiên
Khoa Công Ngh Thông Tin
Struts2 Page5
IX. Ajax và Struts 2 ................................................................................................................................... 38
1. The Head Tag .................................................................................................................................. 38
2. The Div Tag .................................................................................................................................... 39
3. The a Tag ........................................................................................................................................ 41
4. The Submit Tag ............................................................................................................................... 42
5. The Bind Tag .................................................................................................................................. 44
6. The datetimepicker Tag .................................................................................................................. 46
7. The tabbedpanel Tag ....................................................................................................................... 47
8. The textarea Tag ............................................................................................................................. 48
9. The autocompleter Tag ................................................................................................................... 49
10. The tree and treenode Tags ......................................................................................................... 50
I. Gii thiu mô hình MVC
- MVC viết tt t cm t Model-View-Controller
- MVC ln đầu được s dng vào năm 1979 trong ng dng Smalltalk.Nó được phát
trin bi Trygve Reenskaug
- Ngày nay vi s phát trin ca công ngh,mt ng dng có th được tách thành nhiu
phn (layer) và chúng được chy trên nhiu máy tính khác nhau,chng hn như: tng
giao din (The presentation/User Interface) ,tng nghip v (Business logic/Controller),
tng truy xut d liu (data access model). Mô hình MVC ra đời để đáp ng cho nhng
yêu cu trên,và nó được chn làm kiến trúc trin khai trên các ng dng web application.
- Trong ng dng web application thì:
+ Tng View: là các trang HTML/XHTML
+ Tn Controller: đóng vai trò trung gian trong vic bt s kin (event) do người dùng
tương tác trên tng giao din (View Layer),sau đó ng vi các s kin này nó s đánh
thc các x lý nghip v tương ng tng nghip v (Model Layer).Kết qu nhn được
sau khi x lý s được gi tr li tng giao din
+ Tng Model: đóng vai trò trong vic x lý tt c các thao tác nghip v,t vic truy
xut cơ s d liu,tính toán kết qu tr v