¸üÐÂʱ¼ä:2016Äê08ÔÂ29ÈÕ17ʱ30·Ö À´Ô´:ÀÖÓã²¥¿ÍJavaÅàѵѧԺ ä¯ÀÀ´ÎÊý:
| ÒÑÅäÖýá¹ûÀàÐÍÃû | Àà Ãû | Ãè Êö |
| dispatcher | org.apache.struts2.dispatcher. ServletDispatcherResult |
ĬÈϽá¹ûÀàÐÍ£¬ÓÃÀ´³ÊÏÖJSPÒ³Ãæ |
|---|---|---|
| chain | com.opensymphony.xwork2. ActionChainResult |
½«actionºÍÁíÍâÒ»¸öactionÁ´½ÓÆðÀ´ |
| freemarker | org.apache.struts2.views.freemarker. FreemarkerResult |
³ÊÏÖFreemarkerÄ£°å |
| httpheader | org.apache.struts2.dispatcher. HttpHeaderResult |
·µ»ØÒ»¸öÒÑÅäÖúõÄHTTPÍ·ÐÅÏ¢ÏìÓ¦ |
| redirect | org.apache.struts2.dispatcher. ServletRedirectResult |
½«Óû§Öض¨Ïòµ½Ò»¸öÒÑÅäÖúõÄURL |
| redirectAction | org.apache.struts2.dispatcher. ServletActionRedirectResult |
½«Óû§Öض¨Ïòµ½Ò»¸öÒѶ¨ÒåºÃµÄaction |
| stream | org.apache.struts2.dispatcher. StreamResult |
½«ÔʼÊý¾Ý×÷ΪÁ÷´«µÝ»Øä¯ÀÀÆ÷¶Ë£¬ ¸Ã½á¹ûÀàÐͶÔÏÂÔØµÄÄÚÈݺÍͼƬ·Ç³£ÓÐÓà |
| velocity | org.apache.struts2.dispatcher. VelocityResult |
³ÊÏÖVelocityÄ£°å |
| xslt | org.apache.struts2.views.xslt. XSLTResult |
³ÊÏÖXMLµ½ä¯ÀÀÆ÷£¬ ¸ÃXML¿ÉÒÔͨ¹ýXSLÄ£°å½øÐÐת»» |
| plaintext | org.apache.struts2.dispatcher. PlainTextResult |
·µ»ØÆÕͨÎı¾ÀàÈÝ |
¼òµ¥ËµÃ÷Ò»ÏÂresultµÄnameÊôÐÔºÍtypeÊôÐÔ£º
SUCCESS£ºActionÕýÈ·µÄÖ´ÐÐÍê³É£¬·µ»ØÏàÓ¦µÄÊÓͼ£¬successÊÇnameÊôÐÔµÄĬÈÏÖµ¡£
NONE£º±íʾActionÕýÈ·µÄÖ´ÐÐÍê³É£¬µ«²¢²»·µ»ØÈκÎÊÓͼ¡£
ERROR£º±íʾActionÖ´ÐÐʧ°Ü£¬·µ»Øµ½´íÎó´¦ÀíÊÓͼ¡£
INPUT£ºActionµÄÖ´ÐУ¬ÐèÒª´Óǰ¶Ë½çÃæ»ñÈ¡²ÎÊý£¬INPUT¾ÍÊÇ´ú±íÕâ¸ö²ÎÊýÊäÈëµÄ½çÃæ£¬Ò»°ãÔÚÓ¦ÓÃÖУ¬»á¶ÔÕâЩ²ÎÊý½øÐÐÑéÖ¤£¬Èç¹ûÑé֤ûÓÐͨ¹ý£¬½«×Ô¶¯·µ»Øµ½¸ÃÊÓͼ¡£
LOGIN£ºActionÒòΪÓû§Ã»ÓеǽµÄÔÒòûÓÐÕýÈ·Ö´ÐУ¬½«·µ»Ø¸ÃµÇ½ÊÓͼ£¬ÒªÇóÓû§½øÐеǽÑéÖ¤¡£
dispatcher£ºÇëÇóת·¢£¬µ×²ãµ÷ÓÃRequestDispatcherµÄforward()»òinclude()·½·¨£¬dispatcherÊÇ typeÊôÐÔµÄĬÈÏÖµ£¬Í¨³£ÓÃÓÚתÏòÒ»¸öJSP¡£localtionÖ¸¶¨JSPµÄλÖã¬parseÈç¹ûΪfalse±íʾlocationµÄÖµ²»»á±»µ±×÷ OGNL½âÎö£¬Ä¬ÈÏΪtrue¡£
redirect£ºÖض¨Ïò£¬ÐÂÒ³ÃæÎÞ·¨ÏÔʾActionÖеÄÊý¾Ý£¬ÒòΪµ×²ãµ÷ÓÃresponse.sendRedirect("")·½·¨£¬ÎÞ·¨¹²ÏíÇëÇó·¶Î§ÄÚµÄÊý¾Ý£¬²ÎÊýÓëdispatcherÓ÷¨Ïàͬ¡£
redirect-action£ºÖض¨Ïòµ½ÁíÒ»¸öAction£¬²ÎÊýÓëchainÓ÷¨Ïàͬ£¬ÔÊÐí½«ÔActionÖеÄÊôÐÔÖ¸¶¨ÐÂÃû³Æ´øÈëÐÂAction ÖУ¬¿ÉÒÔÔÚResult±êÇ©ÖÐÌí¼Ó <param name=”b”>${a} </param>£¬Õâ±íʾÔActionÖеıäÁ¿aµÄÖµ±»×ª¸øb£¬ÏÂÒ»¸öAction¿ÉÒÔÔÚÖµÕ»ÖÐʹÓÃbÀ´²Ù×÷£¬×¢ÒâÈç¹ûÖµÊÇÖÐÎÄ£¬ÐèÒª×öһЩ±àÂë´¦Àí£¬ÒòΪTomcatĬÈÏÊDz»Ö§³ÖURLÖ±½Ó´«µÝÖÐÎĵģ¡
velocity£ºÊ¹ÓÃvelocityÄ£°åÊä³ö½á¹û£¬locationÖ¸¶¨Ä£°åµÄλÖã¨*.vm£©£¬parseÈç¹ûΪfalse£¬location²»±»OGNL½âÎö£¬Ä¬ÈÏΪtrue¡£
xslt£ºÊ¹ÓÃXSLT½«½á¹ûת»»ÎªxmlÊä³ö£¬locationÖ¸¶¨*.xsltÎļþµÄλÖã¬parseÈç¹ûΪfalse£¬location²»±» OGNL½âÎö£¬Ä¬ÈÏΪtrue¡£matchingPatternÖ¸¶¨ÏëÒªµÄÔªËØÄ£Ê½£¬excludePatternÖ¸¶¨¾Ü¾øµÄÔªËØÄ£Ê½£¬Ö§³ÖÕýÔò±í´ïʽ£¬Ä¬ÈÏΪ½ÓÊÜËùÓÐÔªËØ¡£
httpheader£º¸ù¾ÝÖµÕ»·µ»Ø×Ô¶¨ÒåµÄHttpHeader£¬statusÖ¸¶¨ÏìӦ״̬£¨¾ÍÊÇÖ¸response.sendError(int i)ÖØ¶¨Ïòµ½500µÈ·þÎñÆ÷µÄ״̬ҳ£©¡£parseÈç¹ûΪfalse£¬headerµÄÖµ²»»á±»OGNL½âÎö£¬headers£¬¼ÓÈëµ½headerÖеÄÖµ£¬ÀýÈ磺 <param name=”headers.a”>HelloWorld </param>¡£¿ÉÒÔ¼Ó¶à¸ö£¬ÕâЩ¼ü-Öµ×é³ÉHashMap¡£
freemaker£ºÓÃfreemakerÄ£°åÒýÇæ³ÊÏÖÊÓͼ£¬locationÖ¸¶¨Ä£°å£¨*.ftl£©µÄλÖã¬parseÈç¹ûΪfalse£¬locationµÄÖµ²»»á±»OGNL½âÎö¡£contentTypeÖ¸¶¨ÒÔºÎÖÐÀàÐͽâÎö£¬Ä¬ÈÏΪtext/html¡£
chain£º½«actionµÄ´ø×ÅÔÀ´µÄ״̬ÇëÇóת·¢µ½ÐµÄaction£¬Á½¸öaction¹²ÏíÒ»¸öActionContext£¬actionNameÖ¸¶¨×ªÏòµÄеÄActionµÄÃû×Ö¡£methodÖ¸¶¨×ªÏòÄĸö·½·¨£¬namespaceÖ¸¶¨ÐµÄActionµÄÃû³Æ¿Õ¼ä£¬²»Ð´±íʾÓëÔActionÔÚÏàͬµÄÃû³Æ¿Õ¼ä£»skipActionsÖ¸¶¨Ò»¸öʹÓà , Á¬½ÓµÄActionµÄname×é³ÉµÄ¼¯ºÏ£¬Ò»°ã²»½¨ÒéʹÓÃÕâÖÖÀàÐ͵Ľá¹û¡£
stream£ºÖ±½ÓÏòÏìÓ¦Öз¢ËÍÔʼÊý¾Ý£¬Í¨³£ÔÚÓû§ÏÂÔØÊ±Ê¹Óã¬contentTypeÖ¸¶¨Á÷µÄÀàÐÍ£¬Ä¬ÈÏΪ text/plain£¬contentLengthÒÔbyte¼ÆËãÁ÷µÄ³¤¶È£¬contentDispositionÖ¸¶¨ÎļþµÄλÖã¬Í¨³£Îª filename=”ÎļþµÄλÖÔ£¬inputÖ¸¶¨InputStreamµÄÃû×Ö£¬ÀýÈ磺imageStream£¬bufferSizeÖ¸¶¨»º³åÇø´óС£¬Ä¬ÈÏΪ1024×Ö½Ú¡£
plaintext£ºÒÔÔʼÎı¾ÏÔʾJSP»òÕßHTML£¬locationÖ¸¶¨ÎļþµÄλÖã¬charSetÖ¸¶¨×Ö·û¼¯¡£
±¾ÎİæÈ¨¹éÀÖÓã²¥¿ÍJavaÅàѵѧԺËùÓУ¬»¶Ó×ªÔØ£¬×ªÔØÇë×¢Ã÷×÷Õß³ö´¦¡£Ð»Ð»£¡
×÷ÕߣºÀÖÓã²¥¿ÍJavaÅàѵѧԺ
Ê×·¢£ºhttp://www.itcast.cn/javaee
±±¾©Ð£Çø