⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 入門 09 - 使用dynaactionform類別 - javaworld@tw.htm

📁 struts快速入门文章
💻 HTM
📖 第 1 页 / 共 2 页
字号:
            <DIV class=codeHeader 
            style="BORDER-BOTTOM-STYLE: solid"><B>LoginAction.java</B></DIV>
            <DIV class=codeContent><PRE><SPAN class=java-keyword>package</SPAN> onlyfun.caterpillar;
                                                                               
<SPAN class=java-keyword>import</SPAN> javax.servlet.http.*;
<SPAN class=java-keyword>import</SPAN> org.apache.struts.action.*;
                                                                               
<SPAN class=java-keyword>public</SPAN> class LoginAction <SPAN class=java-keyword>extends</SPAN> Action {
    <SPAN class=java-keyword>public</SPAN> ActionForward execute(ActionMapping mapping,
                                 ActionForm form,
                                 HttpServletRequest request,
                                 HttpServletResponse response)
    <SPAN class=java-keyword>throws</SPAN> Exception {
        DynaActionForm dynaForm = (DynaActionForm) form;
        <SPAN class=java-object>String</SPAN> name = (<SPAN class=java-object>String</SPAN>) dynaForm.get(<SPAN class=java-quote>"name"</SPAN>);
        <SPAN class=java-object>String</SPAN> password = (<SPAN class=java-object>String</SPAN>) dynaForm.get(<SPAN class=java-quote>"password"</SPAN>);
                                                                               
        <SPAN class=java-keyword>if</SPAN>(name.equals(<SPAN class=java-quote>"caterpillar"</SPAN>) &amp;&amp; password.equals(<SPAN class=java-quote>"1234"</SPAN>)) {
            request.setAttribute(<SPAN class=java-quote>"valid_user"</SPAN>, form);
            <SPAN class=java-keyword>return</SPAN> mapping.findForward(<SPAN class=java-quote>"greeting"</SPAN>);
        }
                                                                               
        <SPAN class=java-keyword>return</SPAN> mapping.findForward(<SPAN class=java-quote>"welcome"</SPAN>);
    }
}</PRE></DIV></DIV><BR> 在視圖的取值上,DynaActionForm也可以使用&lt;bean:write&gt;來寫出其指定的屬性值,如果您要使用EL來取得屬性值,則必須先取得map物件再指定屬性名稱,例如 
            ${valid_user.map.name} ,下面是gretting.jsp的內容示範: 
            <DIV class=code 
            style="BORDER-TOP-STYLE: solid; BORDER-RIGHT-STYLE: solid; BORDER-LEFT-STYLE: solid; BORDER-BOTTOM-STYLE: solid">
            <DIV class=codeHeader 
            style="BORDER-BOTTOM-STYLE: solid"><B>greeting.jsp</B></DIV>
            <DIV class=codeContent><PRE>&lt;%@ taglib uri=<SPAN class=java-quote>"/tags/struts-bean"</SPAN> prefix=<SPAN class=java-quote>"bean"</SPAN> %&gt;
&lt;%@ taglib uri=<SPAN class=java-quote>"/tags/struts-html"</SPAN> prefix=<SPAN class=java-quote>"html"</SPAN> %&gt;
&lt;%@ taglib uri=<SPAN class=java-quote>"/tags/struts-logic"</SPAN> prefix=<SPAN class=java-quote>"logic"</SPAN> %&gt;
&lt;%@page contentType=<SPAN class=java-quote>"text/html; charset=Big5"</SPAN>%&gt;
&lt;html:html locale=<SPAN class=java-quote>"<SPAN class=java-keyword>true</SPAN>"</SPAN>&gt;
&lt;head&gt;
&lt;title&gt;&lt;bean:message key=<SPAN class=java-quote>"welcome.title"</SPAN>/&gt;&lt;/title&gt;
&lt;html:base/&gt;
&lt;/head&gt;
&lt;body bgcolor=<SPAN class=java-quote>"white"</SPAN>&gt;
                                                                               
&lt;logic:present scope=<SPAN class=java-quote>"request"</SPAN> name=<SPAN class=java-quote>"valid_user"</SPAN>&gt;
    &lt;bean:write name=<SPAN class=java-quote>"valid_user"</SPAN> property=<SPAN class=java-quote>"name"</SPAN>/&gt;您好,這是您的神秘禮物!
    ${ valid_user.map.name }, ${ valid_user.map.password}
&lt;/logic:present&gt;
                                                                               
&lt;logic:notPresent scope=<SPAN class=java-quote>"request"</SPAN> name=<SPAN class=java-quote>"valid_user"</SPAN>&gt;
    &lt;html:link forward=<SPAN class=java-quote>"welcome"</SPAN>&gt;請先登入&lt;/html:link&gt;
&lt;/logic:notPresent&gt;
                                                                               
&lt;/body&gt;
&lt;/html:html&gt;</PRE></DIV></DIV><BR> Welcome.jsp的內容與之前的主題相同。<BR> DynaActionForm預設並沒有為validate()方法提供任何行為,如果需要的話,您可以透過繼承DynaActionForm來定義validate()方法,並於&lt;form-bean&gt;的type中設定為您所撰寫的類別。<BR> 使用DynaActionForm相當方便,但也必須付出代價,不可避免的,您的strut-config.xml內容將變得冗長,而另一方面, 
            DynaActionForm使用Map來查找屬性,所付出的是效能的降低,如果您的ActionForm經常使用,建議還是使用繼承 
            ActionForm的方法來使用表單物件。: <!-- page content ends --><!--<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"         xmlns:dc="http://purl.org/dc/elements/1.1/"         xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"><rdf:Description    rdf:about="http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=483"    dc:identifier="http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=483"    dc:title="入門 09 - 使用DynaActionForm類別"    trackback:ping="http://www.javaworld.com.tw/confluence/rpc/trackback/483"/></rdf:RDF>-->
            <P>
            <DIV class=greybox><IMG height=16 
            src="入門 09 - 使用DynaActionForm類別 - JAVAWORLD@TW.files/comment_16.gif" 
            width=16 align=absMiddle border=0> 0 comments | <A 
            href="http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=483&amp;showComments=true#addcomment"><IMG 
            height=16 
            src="入門 09 - 使用DynaActionForm類別 - JAVAWORLD@TW.files/add_comment_16.gif" 
            width=16 align=absMiddle border=0></A> <A 
            href="http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=483&amp;showComments=true#addcomment">Add 
            Comment</A> </DIV></TD>
          <TD width=5>&nbsp;</TD>
          <TD vAlign=top width="25%">
            <DIV class=navmenu>
            <DIV class=menuheading>Page Operations</DIV>
            <DIV class=menuitems>
            <DIV class=operations>
            <UL>
              <LI><A accessKey=i 
              href="http://www.javaworld.com.tw/confluence/pages/pageinfo.action?pageId=483"><IMG 
              title="Page Information" height=16 
              src="入門 09 - 使用DynaActionForm類別 - JAVAWORLD@TW.files/about_16.gif" 
              width=16 align=absMiddle border=0></A><SPAN class=label> <A 
              href="http://www.javaworld.com.tw/confluence/pages/pageinfo.action?pageId=483">Page 
              Information</A></SPAN> 
              <LI><A 
              href="http://www.javaworld.com.tw/confluence/pages/viewpreviousversions.action?pageId=483"><IMG 
              title="Page History" height=16 
              src="入門 09 - 使用DynaActionForm類別 - JAVAWORLD@TW.files/history_16.gif" 
              width=16 align=absMiddle border=0></A><SPAN class=label> <A 
              href="http://www.javaworld.com.tw/confluence/pages/viewpreviousversions.action?pageId=483">Page 
              History</A></SPAN> </LI></UL>
            <UL>
              <LI><A 
              href="http://www.javaworld.com.tw/confluence/display/opensrc/Home"><IMG 
              title="Space Homepage" height=16 
              src="入門 09 - 使用DynaActionForm類別 - JAVAWORLD@TW.files/home_16.gif" 
              width=16 align=absMiddle border=0></A><SPAN class=label> <A 
              href="http://www.javaworld.com.tw/confluence/display/opensrc/Home">Space 
              Homepage</A></SPAN> 
              <LI><A 
              href="http://www.javaworld.com.tw/confluence/spaces/viewspacesummary.action?key=opensrc"><IMG 
              title="Space Summary" height=16 
              src="入門 09 - 使用DynaActionForm類別 - JAVAWORLD@TW.files/web_16.gif" 
              width=16 align=absMiddle border=0></A><SPAN class=label> <A 
              href="http://www.javaworld.com.tw/confluence/spaces/viewspacesummary.action?key=opensrc">Space 
              Summary</A></SPAN> </LI></UL></DIV>
            <P>
            <DIV class=infopanel-heading>Incoming Links: <SPAN 
            class=smallfont>(<A 
            href="http://www.javaworld.com.tw/confluence/pages/pageinfo.action?pageId=483#incoming">more</A>)</SPAN> 
            </DIV><IMG title=Struts入門 height=16 
            src="入門 09 - 使用DynaActionForm類別 - JAVAWORLD@TW.files/docs_16.gif" 
            width=16 align=absMiddle border=0> <A 
            href="http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=1958">Struts入門</A> 
            <BR>
            <P></P>
            <P>
            <DIV class=infopanel-heading>Hot Referrers: <SPAN 
            class=smallfont>(<A 
            href="http://www.javaworld.com.tw/confluence/pages/pageinfo.action?pageId=483#referers">more</A>)</SPAN> 
            </DIV><SPAN class=smallerfont><A 
            title=http://140.138.150.106/confluence/pages/viewpage.action?pageId=483 
            href="http://140.138.150.106/confluence/pages/viewpage.action?pageId=483">140.138.150.106/confluence/pa...</A> 
            (27) <BR><A 
            title=http://140.138.150.106/confluence/pages/viewpage.action?pageId=1958 
            href="http://140.138.150.106/confluence/pages/viewpage.action?pageId=1958">140.138.150.106/confluence/pa...</A> 
            (18) <BR><A 
            title=http://www.jsptw.com/confluence/pages/viewpage.action?pageId=1958 
            href="http://www.jsptw.com/confluence/pages/viewpage.action?pageId=1958">http://www.jsptw.com/confluence/pages/viewpage.action?pageId=1958</A> 
            (15) <BR><A 
            title=http://140.138.150.106/confluence/pages/viewpage.action?pageId=483&amp;showComments=true 
            href="http://140.138.150.106/confluence/pages/viewpage.action?pageId=483&amp;showComments=true">140.138.150.106/confluence/pa...</A> 
            (6) <BR><A 
            title=http://140.138.150.106/confluence/pages/viewpage.action?pageId=483&amp;showComments=false 
            href="http://140.138.150.106/confluence/pages/viewpage.action?pageId=483&amp;showComments=false">140.138.150.106/confluence/pa...</A> 
            (6) <BR><A 
            title=http://javaworld.com.tw/confluence/pages/viewpage.action?pageId=1958 
            href="http://javaworld.com.tw/confluence/pages/viewpage.action?pageId=1958">javaworld.com.tw/confluence/p...</A> 
            (5) <BR><A 
            title=http://www.google.com/search?hl=zh-CN&amp;ie=UTF-8&amp;q=+%3Caction+type%3D%22org.apache.struts.actions.ForwardAction%22+parameter&amp;lr=lang_zh-CN 
            href="http://www.google.com/search?hl=zh-CN&amp;ie=UTF-8&amp;q=+%3Caction+type%3D%22org.apache.struts.actions.ForwardAction%22+parameter&amp;lr=lang_zh-CN">Google: 
            <ACTION 
            title=http://www.google.com/search?q=ACTIONFORM&amp;hl=zh-CN&amp;lr=lang_zh-CN&amp;ie=UTF-8&amp;newwindow=1&amp;start=10&amp;sa=N 
            search?q='ACTIONFORM&amp;hl=zh-CN&amp;lr=lang_zh-CN&amp;ie=UTF-8&amp;newwindow=1&amp;start=10&amp;sa=N"' 
            www.google.com http: 
            type="org.ap...</a> (4)&#10;                <br/>&#10;                            <a href=">Google: 
            ACTIONFORM</A> (4) <BR><A 
            title=http://www.google.com/search?hl=zh-CN&amp;newwindow=1&amp;q=DynaActionForm&amp;btnG=%E6%90%9C%E7%B4%A2&amp;lr= 
            href="http://www.google.com/search?hl=zh-CN&amp;newwindow=1&amp;q=DynaActionForm&amp;btnG=%E6%90%9C%E7%B4%A2&amp;lr=">Google: 
            DynaActionForm</A> (4) <BR><A 
            title=http://www.google.com/search?q=bean:write&amp;hl=zh-CN&amp;lr=lang_zh-CN&amp;ie=UTF-8&amp;newwindow=1&amp;start=10&amp;sa=N 
            href="http://www.google.com/search?q=bean:write&amp;hl=zh-CN&amp;lr=lang_zh-CN&amp;ie=UTF-8&amp;newwindow=1&amp;start=10&amp;sa=N">Google: 
            bean:write</A> (3) <BR></SPAN>
            <P></P></DIV></DIV>
            <DIV></DIV></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></DIV>
<DIV class=license-nonprofit>This site is running on Atlassian <B><A 
href="http://www.atlassian.com/c/conf/10137">Confluence</A></B> with a free 
<B>Open Source Project / Non-profit License</B> (<A 
href="http://www.atlassian.com/c/conf/10138">license details</A>).<BR><A 
href="http://www.atlassian.com/c/conf/10137">Confluence</A> is professional 
wiki, blog and knowledge management tool. <A 
href="http://www.atlassian.com/c/conf/10137">Evaluate Confluence for your 
organisation</A>.<BR></DIV>
<DIV class=bottomshadow></DIV>
<DIV class=smalltext id=poweredby>Powered by <A class=smalltext 
href="http://www.atlassian.com/software/confluence/default.jsp?clicked=footer">Atlassian 
Confluence</A> (Version: 1.3.5 Build:#122 Mar 01, 2005) - <A class=smalltext 
href="http://jira.atlassian.com/secure/BrowseProject.jspa?id=10470">Bug/feature 
request</A> - <A 
href="http://www.javaworld.com.tw/confluence/administrators.action">Contact 
Administrators</A> <BR></DIV></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -