Java±Ê¼Ç µÚ25Õ Struts2 ÁªÏµ¿Í·þ

·¢²¼Ê±¼ä : ÐÇÆÚ¶þ ÎÄÕÂ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£ºÏÂÔØ