·¢²¼Ê±¼ä : ÐÇÆÚ¶þ ÎÄÕÂJava±Ê¼Ç µÚ25Õ Struts2¸üÐÂÍê±Ï¿ªÊ¼ÔĶÁca566558f78a6529657d5305
Struts¼ò½é .................................................................. 1 Struts2-HelloWorld ........................................................... 1 ÔÚActionÖзÃÎÊWeb×ÊÔ´ ...................................................... 2 Struts2ÅäÖà ................................................................. 3
ͨÓÃÅäÖà ................................................................. 3 ActionÅäÖà .............................................................. 3 ResultÅäÖà .............................................................. 3 ͨÅä·ûÓ³Éä ............................................................... 5 ¶¯Ì¬·½·¨µ÷Óà ............................................................. 5 ÖµÕ»£¨ValueStack£©ÓëOgnl .................................................... 5 Struts2±êÇ© ................................................................. 6
ͨÓñêÇ© ................................................................. 6 Form±êÇ© ............................................................... 10 Á·Ï°£º×¢²á£¨FormTags£© .................................................. 13 Á·Ï°£ºEditUser .............................................................. 14
ÆÕͨ·½·¨ÊµÏÖ£º .......................................................... 14 ModelDrivenÓëPreparableʵÏÖ ........................................... 14 ¹ú¼Ê»¯(i18n) ................................................................ 16 ÀàÐÍת»».................................................................... 17
ÆÕͨAction ............................................................. 17 ActionʵÏÖValidationAware½Ó¿Ú ......................................... 17 ¶¨ÖÆÀàÐÍת»»Æ÷ .......................................................... 18
ÀàÐÍת»»Ó븴ÔÓ¶ÔÏóÅäºÏʹÓà .......................................... 19 ʹÓÃBeanUtil½âÎöweb.xmlÖгõʼ»¯²ÎÊý ............................... 20
ÎļþÉÏ´«ÏÂÔØ ................................................................ 20
ÎļþÉÏ´« ................................................................ 20 ÎļþÏÂÔØ ................................................................ 21 ·ÀÖ¹Öظ´Ìá½» ................................................................ 22 ÁãÅäÖà ..................................................................... 23 ÂíÊ¿±øÊÓƵ±Ê¼Ç .............................................................. 23
Struts¼ò½é Struts2-HelloWorld
1. ´î½¨Struts2µÄ»·¾³£º²Î¿¼Ä¿Â¼struts-2.1.8.1\\apps\\struts2-blank-2.1.8.1
¼ÓÈë jar °ü: ¸´ÖÆ\\WEB-INF\\lib ϵÄËùÓÐ jar °üµ½lib Ŀ¼ÏÂ.
b) ÔÚ web.xml ÎļþÖÐÅäÖà struts2¹ýÂËÆ÷: ¸´ÖÆ \\WEB-INF\\web.xml ÎļþÖеĹý
ÂËÆ÷µÄÅäÖõ½µ±Ç° web Ó¦ÓÃµÄ web.xml ÎļþÖÐ
c) ÔÚµ±Ç° web Ó¦ÓÃµÄ classpath ÏÂÌí¼Ó struts2 µÄÅäÖÃÎļþ struts.xml: ¸´ÖÆ
a)
\\WEB-INF\\classes Ï嵀 struts.xml Îļþµ½µ±Ç° web Ó¦ÓÃµÄ src Ŀ¼ÏÂ.
2. ÅäÖÃStruts.xmlÎļþ£º
ÔÚActionÖзÃÎÊWeb×ÊÔ´
1. ÓëServletAPI½âñîµÄ·ÃÎÊ·½Ê½£º
a) ÓÉActionContext»ñÈ¡Ìæ´ú¶ÔÏó£ºStruts2¶ÔHttpServletRequest£¬HttpSession
ºÍServletContext½øÐÐÁË·â×°£¬¹¹ÔìÁË3¸öMap¶ÔÏóÀ´Ìæ´úÕâ3¸ö¶ÔÏó£¬ÔÚActionÖпÉÒÔÖ±½ÓʹÓÃÆä¶ÔÓ¦µÄMap¶ÔÏóÀ´±£´æºÍ¶ÁÈ¡Êý¾Ý£¨ÎÞ·¨Ö´ÐÐÆäËû²Ù×÷£©¡£ÕâÈý¸öÌæ´úMap¶ÔÏ󶼿ÉÒÔͨ¹ýActionContext»ñÈ¡¡£ i. HttpServletRequest£ºActionContext.getContext().get(¡°request¡±) ii. HttpSession£ºActionContext.getContext().getSession() iii. ServletContext : ActionContext.getContext().getApplication() iv. Parameter:ActionContext.getContext().getApplication().getParameters
(),»ñÈ¡AcionÇëÇóµÄ²ÎÊý
b) ʵÏÖ¶ÔÓ¦µÄ½Ó¿Ú£ºApplicationAware,RequestAware,SessionAware,
ParameterAware 2. ÓëServletAPIñîºÏµÄ·ÃÎÊ·½Ê½£º
a) ͨ¹ýServletActionContext»ñÈ¡Èý¸ö¶ÔÏó b) ʵÏÖServlet¶ÔÓ¦µÄ½Ó¿Ú
3. namespace£º¾ö¶¨µÄactionµÄ·ÃÎÊ·¾¶£¬Ä¬ÈÏΪ¡°¡±£¬/xxx/yyy¶ÔÓ¦
/xxx/yyy/index.action£¬ÈôΪ¿Õ£¬¸ÕÖ»ÒªURLÒÔindex.action½á⣬¶¼¿ÉÒÔ·ÃÎʵ½¡£Èç/xxx/index.action, /xxx/yyy/index.action¶¼¿ÉÒÔ·ÃÎʵ½¡£
Struts2ÅäÖÃ
ͨÓÃÅäÖÃ
1. ³£ÓÃÅäÖãºactionÇëÇóuriÀ©Õ¹Ãû£¬¶¯Ì¬·½·¨µ÷Ó㬿ª·¢Õßģʽ
ActionÅäÖÃ
1. ÅäÖÃĬÈϵÄAction£ºµ±·ÃÎʵÄAction²»´æÔÚʱ£¬×Ô¶¯·ÃÎÊĬÈϵÄaction
2. ¼Ì³ÐÆäËü°üµÄaction£º
ResultÅäÖÃ
1. ResultTypeÀàÐÍÓУº
2. chain£º±íʾÌøתµ½ÆäËüaction£¬²¢Ð¯´ø²ÎÊýÖµ
3. redirect£ºÖض¨Ïòµ½ÆäËûÁ´½Ó
4. redirectAction£ºÖض¨Ïòµ½ÆäËûAction 5. httpheader£º¶¨ÖÆÇëÇóÍ· 6. stream£ºÏÂÔØ