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

📄 入門 04 - hellostruts - 組態與視圖 - javaworld@tw.htm

📁 struts快速入门文章
💻 HTM
📖 第 1 页 / 共 2 页
字号:
            style="BORDER-BOTTOM-STYLE: solid"><B>struts-config.xml</B></DIV>
            <DIV class=codeContent><PRE>&lt;?xml version=<SPAN class=java-quote>"1.0"</SPAN> encoding=<SPAN class=java-quote>"ISO-8859-1"</SPAN> ?&gt;
                                                                               
&lt;!DOCTYPE struts-config PUBLIC
          <SPAN class=java-quote>"-<SPAN class=java-comment>//Apache Software Foundation//DTD Struts Configuration 1.1//EN"</SPAN></SPAN>
          <SPAN class=java-quote>"http:<SPAN class=java-comment>//jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"</SPAN>&gt;</SPAN>
                                                                               
&lt;struts-config&gt;
    &lt;global-forwards&gt;
        &lt;forward
            name=<SPAN class=java-quote>"welcome"</SPAN>
            path=<SPAN class=java-quote>"/Welcome.<SPAN class=java-keyword>do</SPAN>"</SPAN>/&gt;
    &lt;/global-forwards&gt;
                                                                               
    &lt;action-mappings&gt;
        &lt;action
            path=<SPAN class=java-quote>"/Welcome"</SPAN>
            type=<SPAN class=java-quote>"org.apache.struts.actions.ForwardAction"</SPAN>
            parameter=<SPAN class=java-quote>"/pages/Welcome.jsp"</SPAN>/&gt;
    &lt;/action-mappings&gt;
                                                                               
    &lt;message-resources parameter=<SPAN class=java-quote>"resources.application"</SPAN>/&gt;
&lt;/struts-config&gt;</PRE></DIV></DIV><BR> &lt;global-forward&gt;提供一個全局可查找的forward對象,在Struts的組態中,我們可以為每一個&lt; 
            action&gt;標籤指定其forward對象,如果在&lt;action&gt;中查找不到,就會至&lt;global- 
            forward&gt;中查找,對於一些共同使用的forward對象,您可以集中於&lt;global-forward&gt;中管理。<BR> 在&lt;action-mappings&gt;中用於設定請求的URI與Action物件的對應,也就是什麼樣的路徑請求該使用哪一個 
            Action物件來處理,每一個&lt;action&gt;標籤的設定對應於一個ActionMapping物件,path路徑設定為Welcome表示Welcome.do的請求將由type所設定的物件來處理,ForwardAction單純的將請求forward至另一個對象,forward的對象則是parameter所設定的對象,透過ForwardAction的轉發,我們可以避免直接請求一個資源的真正位址,而使得所有的請求都可以先經過控制器ActionServlet來進行調度。<BR> &lt;message-resources&gt;用於設定我們的訊息資源檔,parameter中的設定表示我們將使用WEB- 
            INF/classes/resources目錄中application為開頭的資源檔案,預設將讀取application.properties,根據區域設定的不同,可以讀取不同的區域化訊息資源檔案。<BR>接下來我們準備index.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>index.jsp</B></DIV>
            <DIV class=codeContent><PRE>&lt;%@ taglib uri=<SPAN class=java-quote>"/tags/struts-logic"</SPAN> prefix=<SPAN class=java-quote>"logic"</SPAN> %&gt;
&lt;logic:redirect forward=<SPAN class=java-quote>"welcome"</SPAN>/&gt;</PRE></DIV></DIV><BR> &lt;logic:redirect&gt;標籤會查找struts-config.xml中的&lt;global-forward&gt; 
            標籤中是否設定有"welcome"的forward對象,並使用redirect的方式重新導向至指定的路徑,我們之前已經在web.xml中設定了 
            &lt;welcome-file&gt;為index.jsp,所以當有人請求根目錄時,將會以index.jsp的內容回應,而根據 
            index.jsp與&lt;global-forward&gt;的設定,請求將會被重新導向至Welcome.do,而ActionServlet會根據&lt;action-mappings&gt;中的設定,將請求forward至pages/Welcome.jsp,由於使用forward的方式,所以動作是在容器內進行的,瀏覽器並不知道這件事,因而瀏覽器的網址列並不會改變,仍然顯示Welcome.do。<BR> Welcome.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>Welcome.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;%@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;H1&gt;&lt;bean:message key=<SPAN class=java-quote>"welcome.message"</SPAN>/&gt;&lt;/H1&gt;
                                                                               
&lt;/body&gt;
&lt;/html:html&gt;</PRE></DIV></DIV><BR> 這邊使用了&lt;html:html&gt;標籤與&lt;bean:message&gt;標籤,標籤的使用方式是顯而易見、不難理解的,其中&lt;bean:message&gt;的key比對來源就是我們的訊息資源檔,也就是application.properties,如果您有設定中文訊息檔的話就是application_zh.properties,您可以使用http://localhost: 
            8080/HelloStruts/來瀏覽,最後網址列會變成http://localhost: 
            8080/HelloStruts/Welcome.do,而Welcome.jsp所產生的HTML原始碼如下: 
            <DIV class=code 
            style="BORDER-TOP-STYLE: solid; BORDER-RIGHT-STYLE: solid; BORDER-LEFT-STYLE: solid; BORDER-BOTTOM-STYLE: solid">
            <DIV class=codeContent><PRE>&lt;html lang=<SPAN class=java-quote>"zh"</SPAN>&gt;
&lt;head&gt;
&lt;title&gt;哈囉!Struts!&lt;/title&gt;
&lt;base href=<SPAN class=java-quote>"http:<SPAN class=java-comment>//localhost:8080/HelloStruts/pages/Welcome.jsp"</SPAN>&gt;</SPAN>
&lt;/head&gt;
&lt;body bgcolor=<SPAN class=java-quote>"white"</SPAN>&gt;

&lt;H1&gt;這是您的第一個Struts!&lt;/H1&gt;

&lt;/body&gt;
&lt;/html&gt;</PRE></DIV></DIV><!-- 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=237"    dc:identifier="http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=237"    dc:title="入門 04 - HelloStruts - 組態與視圖"    trackback:ping="http://www.javaworld.com.tw/confluence/rpc/trackback/237"/></rdf:RDF>-->
            <P>
            <DIV class=greybox><IMG height=16 
            src="入門 04 - HelloStruts - 組態與視圖 - 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=237&amp;showComments=true#addcomment"><IMG 
            height=16 
            src="入門 04 - HelloStruts - 組態與視圖 - 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=237&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=237"><IMG 
              title="Page Information" height=16 
              src="入門 04 - HelloStruts - 組態與視圖 - 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=237">Page 
              Information</A></SPAN> 
              <LI><A 
              href="http://www.javaworld.com.tw/confluence/pages/viewpreviousversions.action?pageId=237"><IMG 
              title="Page History" height=16 
              src="入門 04 - HelloStruts - 組態與視圖 - 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=237">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="入門 04 - HelloStruts - 組態與視圖 - 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="入門 04 - HelloStruts - 組態與視圖 - 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=237#incoming">more</A>)</SPAN> 
            </DIV><IMG title=Struts入門 height=16 
            src="入門 04 - HelloStruts - 組態與視圖 - 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=237#referers">more</A>)</SPAN> 
            </DIV><SPAN class=smallerfont><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> 
            (35) <BR><A 
            title=http://140.138.150.106/confluence/pages/listpages-dirview.action?key=opensrc 
            href="http://140.138.150.106/confluence/pages/listpages-dirview.action?key=opensrc">140.138.150.106/confluence/pa...</A> 
            (34) <BR><A 
            title=http://140.138.150.106/confluence/pages/viewpage.action?pageId=237 
            href="http://140.138.150.106/confluence/pages/viewpage.action?pageId=237">140.138.150.106/confluence/pa...</A> 
            (28) <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> 
            (27) <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> 
            (7) <BR><A 
            title=http://140.138.150.106/confluence/pages/viewpage.action?pageId=237&amp;showComments=true 
            href="http://140.138.150.106/confluence/pages/viewpage.action?pageId=237&amp;showComments=true">140.138.150.106/confluence/pa...</A> 
            (7) <BR><A 
            title=http://140.138.150.106/confluence/pages/viewpage.action?pageId=237&amp;showComments=false 
            href="http://140.138.150.106/confluence/pages/viewpage.action?pageId=237&amp;showComments=false">140.138.150.106/confluence/pa...</A> 
            (7) <BR><A 
            title=http://www.google.co.jp/search?hl=zh-CN&amp;ie=UTF-8&amp;q=+Location%3A+Dashboard+%3E+J2EE+%3E+Pages+%3E+Home+%3E+JSP+%3E+JSP%E5%85%A5%E9%96%80+%3E+JSP+Servlet+Filter-1+&amp;btnG=Google%E6%90%9C%E7%B4%A2&amp;lr=lang_zh-CN 
            href="http://www.google.co.jp/search?hl=zh-CN&amp;ie=UTF-8&amp;q=+Location%3A+Dashboard+%3E+J2EE+%3E+Pages+%3E+Home+%3E+JSP+%3E+JSP%E5%85%A5%E9%96%80+%3E+JSP+Servlet+Filter-1+&amp;btnG=Google%E6%90%9C%E7%B4%A2&amp;lr=lang_zh-CN">Google: 
            Location: Dashboard ...</A> (3) <BR><A 
            title=http://140.138.150.106/confluence/pages/viewpage.action?pageId=237&amp;decorator=printable 
            href="http://140.138.150.106/confluence/pages/viewpage.action?pageId=237&amp;decorator=printable">140.138.150.106/confluence/pa...</A> 
            (2) <BR><A 
            title=http://www.javaworld.com.tw/jute/post/view?bid=24&amp;id=61170&amp;tpg=1&amp;ppg=1&amp;sty=1 
            href="http://www.javaworld.com.tw/jute/post/view?bid=24&amp;id=61170&amp;tpg=1&amp;ppg=1&amp;sty=1">http://www.javaworld.com.tw/jute/post/view?bid=24&amp;id=61170&amp;tpg=1&amp;ppg=1&amp;sty=1</A> 
            (1) <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 + -