±µ¤f±µ¦¬°Ñ¼Æ292.2.4¹ê½îÀô¸`29
2.3Action³X°ÝServletAPI30
2.3.1³q¹LActionContext30
2.3.2¹ê²{RequestAware¡BSessionAware©MApplicationAware±µ¤f32
2.3.3³q¹LServletActionContext33
2.3.4¹ê²{ServletRequestAware±µ¤f34
2.3.5¹ê½îÀô¸`35
2.4struts.xml¤å¥ó¤¤ªºinclude¤Îconstant36
2.4.1includeªº°t¸m36
2.4.2constantªº°t¸m36
2.5Action¤¤±`¨£ªºµ²ªGÃþ«¬37
2.5.1chainÃþ«¬37
2.5.2redirectActionÃþ«¬38
2.5.3redirectÃþ«¬39
2.5.4dispatcherÃþ«¬39
2.5.5¥þ§½result39
2.5.6¹ê½îÀô¸`40
2.6¥]ªºÄ~©Ó41
2.7¥»³¹¤pµ²42
²ßÃD242²Ä3³¹Struts2ªºÃþ«¬Âà´«43
3.1Ãþ«¬Âà´«ªº·N¸q43
3.2Struts2¤º¸mªºÃþ«¬Âà´«¾¹45
3.3¦Û©w¸qÃþ«¬Âà´«¾¹47
3.3.1¹ê²{Ãþ«¬Âà´«¾¹50
3.3.2ª`¥UÃþ«¬Âà´«¾¹52
3.3.3¹ê½îÀô¸`53
3.4¼Æ²ÕÄݩʪºÃþ«¬Âà´«¾¹53
3.5¶°¦XÄݩʪºÃþ«¬Âà´«¾¹56
3.6¥»³¹¤pµ²58
²ßÃD358²Ä4³¹Struts2ªºÄdºI¾¹59
4.1ÄdºI¾¹·§z59
4.1.1ÄdºI¾¹ªºì²z59
4.1.2ÄdºI¾¹»P¹LÂo¾¹ªº°Ï§O59
4.1.3Struts2¤º¸mªºÄdºI¾¹60
4.2ÄdºI¾¹ªº°t¸m61
4.2.1°t¸mÄdºI¾¹62
4.2.2ÄdºI¾¹´Ì63
4.2.3Àq»{ÄdºI¾¹63
4.2.4¹ê½îÀô¸`64
4.3¦Û©w¸qÄdºI¾¹64
4.3.1¹ê²{Interceptor±µ¤f65
4.3.2Ä~©ÓAbstractInterceptorÃþ67
4.3.3Ä~©ÓMethodFilterInterceptorÃþ67
4.3.4¹ê½îÀô¸`69
4.4¨Ï¥Î¦Û©w¸qÄdºI¾¹§¹¦¨ÅvÅçÃÒ71
4.5¥»³¹¤pµ²74
²ßÃD474²Ä5³¹ªí¹F¦¡»y¨¥OGNL76
5.1OGNL²¤¶76
5.2OGNL°ò¦76
5.2.1OGNL¤W¤U¤å78
5.2.2È´Ì81
5.2.3OGNLªº³X°Ý83
5.2.4¹ê½îÀô¸`85
5.3OGNL°ò¥»»yªk85
5.3.1±`¶q86
5.3.2¾Þ§@²Å86
5.3.3OGNLªí¹F¦¡87
5.3.4¹ê½îÀô¸`91
5.4¥»³¹¤pµ²96
²ßÃD596²Ä6³¹Struts2¤¤ªº¼Ðñ97
6.1¼Ðñ®w·§z97
6.1.1¼Ðñªº¤ÀÃþ97
6.1.2¼Ðñªº¨Ï¥Î97
6.1.3¼Ðñªº»yªk97
6.2¼Æ¾Ú¼Ðñ98
6.2.1action¼Ðñ99
6.2.2bean¼Ðñ102
6.2.3date¼Ðñ103
6.2.4debug¼Ðñ104
6.2.5include¼Ðñ105
6.2.6param¼Ðñ106
6.2.7push¼Ðñ106
6.2.8set¼Ðñ107
6.2.9url¼Ðñ108
6.2.10property¼Ðñ109
6.2.11¹ê½îÀô¸`109
6.3¬yµ{±±¨î¼Ðñ110
6.3.1if/elseif/else¼Ðñ110
6.3.2iterator¼Ðñ111
6.3.3append¼Ðñ113
6.3.4generator¼Ðñ114
6.3.5merge¼Ðñ115
6.3.6subset¼Ðñ115
6.3.7sort¼Ðñ117
6.3.8¹ê½îÀô¸`118
6.4ªí³æ¼Ðñ118
6.4.1ªí³æ¼Ðñªº³q¥ÎÄÝ©Ê118
6.4.2checkboxlist¼Ðñ119
6.4.3combobox¼Ðñ121
6.4.4doubleselect¼Ðñ122
6.4.5optiontransferselect¼Ðñ123
6.4.6select¼Ðñ125
6.4.7optgroup¼Ðñ126
6.4.8radio¼Ðñ127
6.4.9¹ê½îÀô¸`128
6.5«Dªí³æ¼Ðñ129
6.6¥»³¹¤pµ²131
²ßÃD6131²Ä7³¹Struts2ªº¿é¤J®ÕÅç132
7.1¿é¤J®ÕÅç·§z132
7.1.1«È¤áºÝ®ÕÅç132
7.1.2ªA°È¾¹ºÝ®ÕÅç136
7.2¤â°Ê½sµ{®ÕÅç136
7.2.1«¼gvalidate()¤èªk136
7.2.2«¼gvalidateXxx()¤èªk139
7.2.3¿é¤J®ÕÅ窺¬yµ{140
7.2.4¹ê½îÀô¸`140
7.3®ÕÅç®Ø¬[®ÕÅç141
7.3.1Struts2¤º¸mªº®ÕÅç¾¹141
7.3.2±`¥Î¤º¸m®ÕÅç¾¹ªº°t¸m142
7.3.3®ÕÅçAction¤¤©Ò¦³»Pexecuteñ¦W¬Û¦Pªº¤èªk143
7.3.4®ÕÅçAction¤¤¬YÓ»Pexecuteñ¦W¬Û¦Pªº¤èªk145
7.3.5®ÕÅç¤å¥ó·j¯Á¶¶§Ç146
7.3.6¹ê½îÀô¸`146
7.4¥»³¹¤pµ²146
²ßÃD7147²Ä8³¹Struts2ªº°ê»Ú¤Æ148
8.1µ{§Ç°ê»Ú¤Æ·§z148
8.1.1Java°ê»Ú¤Æªº«ä·Q148
8.1.2Java¤ä«ùªº»y¨¥©M°ê®a149
8.1.3Javaµ{§Ç°ê»Ú¤Æ150
8.1.4±a¥e¦ì²Åªº°ê»Ú¤Æ«H®§152
8.1.5¹ê½îÀô¸`152
8.2°ê»Ú¤Æªº¨BÆJ153
8.2.1Struts2¤¤¥[¸ü¥þ§½¸ê·½¤å¥ó153
8.2.2°ê»Ú¤Æ«H®§¿é¥X153
8.2.3¹ê½îÀô¸`156
8.3¸ê·½¤å¥óªº¥[¸ü¤è¦¡157
8.3.1¥]S³ò¸ê·½¤å¥ó157
8.3.2ActionS³ò¸ê·½¤å¥ó157
8.3.3Á{®É«ü©w¸ê·½¤å¥ó157
8.4¥Î¤á¦Û©w¸q¤Á´«»y¨¥¥Ü¨Ò158
8.5¥»³¹¤pµ²162
²ßÃD8163²Ä9³¹¤å¥óªº¤W¶Ç»P¤U¸ü164
9.1Struts2¤å¥ó¤W¶Ç164
9.1.1°ò¤_ªí³æªº¤å¥ó¤W¶Ç164
9.1.2Struts2³æ¤å¥ó¤W¶Ç165
9.1.3ÄdºI¾¹¹ê²{¤å¥ó¹LÂo168
9.1.4¤å¥ó¤W¶Çªº±`¶q°t¸m169
9.1.5Struts2¦h¤å¥ó¤W¶Ç169
9.1.6¹ê½îÀô¸`172
9.2Struts2¤å¥ó¤U¸ü172
9.3¥»³¹¤pµ²176
²ßÃD9176²Ä10³¹¹q¤l°Ó°È¥»Oªº³]p»P¹ê²{178
10.1¨t²Î³]p178
10.1.1¨t²Î¥\¯à»Ý¨D178
10.1.2¨t²Î¼Ò¶ô¹º¤À178
10.2¼Æ¾Ú®w³]p179
10.2.1¼Æ¾Ú®w·§©Àµ²ºc³]p179
10.2.2¼Æ¾ÚÅÞ¿èµ²ºc³]p181
10.2.3³Ð«Ø¼Æ¾Úªí182
10.3¨t²ÎºÞ²z185
10.3.1¾É¤J¬ÛÃöªºjar¥]185
10.3.2JSP¶±ºÞ²z185
10.3.3¥]ºÞ²z189
10.3.4°t¸m¤å¥óºÞ²z189
10.4²Õ¥ó³]p195
10.4.1¹LÂo¾¹195
10.4.2ÄdºI¾¹195
10.4.3ÅçÃÒ½X196
10.4.4¼Æ¾Ú®w¾Þ§@196
10.5¦Z»OºÞ²z¤l¨t²Îªº¹ê²{211
10.5.1Actionªº¹ê²{212
10.5.2ºÞ²zûµn¿ý218
10.5.3²K¥[°Ó«~219
10.5.4¬d¸ß°Ó«~221
10.5.5קï°Ó«~223
10.5.6§R°£°Ó«~226
10.5.7q³æºÞ²z227
10.5.8¥Î¤áºÞ²z228
10.5.9¤½§iºÞ²z229
10.5.10°h¥X¨t²Î232
10.6«e»O¹q¤l°Ó°È¤l¨t²Îªº¹ê²{232
10.6.1Actionªº¹ê²{233
10.6.2¾É¯èÄæ239
10.6.3¾P°â±Æ¦æ243
10.6.4¤H®ð±Æ¦æ243
10.6.5³Ì·s°Ó«~243
10.6.6¤½§iÄæ243
10.6.7¥Î¤áª`¥U243
10.6.8¥Î¤áµn¿ý243
10.6.9°Ó«~¸Ô±¡244
10.6.10Ãöª`°Ó«~246
10.6.11Áʪ«¨®246
10.6.12¤U³æ249
10.6.13¥Î¤á¤¤¤ß251
10.7¥»³¹¤pµ²255
°Ñ¦Ò¤åÄm256