LittleRain

          小雨不打傘 打傘雨不小

          對實戰Struts中一個經典例子的詳細學習

          關于Logon例子的學習

          Welcome頁面:

          <%@ taglib uri="/tags/struts-bean" prefix="bean" %>
          <%@ taglib uri="/tags/struts-html" prefix="html" %>
          <%@ taglib uri="/tags/struts-logic" prefix="logic" %>
          (在struts1.2中要寫成? <%@ taglib uri="
          http://struts.apache.org/tags-html " prefix="html" %>? 其他兩個相似
          作用:使得輸入的擴展標簽庫可以被頁面的其他部分使用)

          <HTML>
          <HEAD>
          <TITLE>Welcome!</TITLE>
          <html:base/>
          (使得對于圖像等資源的引用與原始jsp頁面位置相關)

          </HEAD>
          <BODY>?<logic:presentname="user">????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
          <H3>Welcome<bean:write name="user" property="username"/>!</H3>??????????????????????????????????????????????????????
          </logic:present>???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
          (檢查用戶是否在session中存儲了userbean.如果存儲了該bean,則在歡迎頁面中顯示username)?????????
          ?
          ??????????
          <logic:notPresentscope="session" name="user">
          <H3>Welcome World!</H3>
          </logic:notPresent>
          (如果不存在userbean則顯示"Welcome World!")
          注:在Struts中的邏輯標簽都是使用"this"和"notThis"這樣的表單,但可以通過擴展標簽庫來實現if/then/else等語法

          <html:errors/>
          (用來顯示錯誤信息:)

          <UL>
          <LI><html:linkforward="logon">Sign in</html:link></LI>
          <logic:presentname="user">
          <LI><html:linkforward="logoff">Sign out</html:link></LI>
          </logic:present>
          </UL>
          <IMG src='struts-power.gif' alt='Powered by Struts'>
          </BODY>
          </HTML>

          上述的jsp頁面在瀏覽器中的代碼:

          <HTML>
          <HEAD>
          <TITLE>Welcome!</TITLE>
          <base href="
          http://localhost:8080/logon/pages/Welcome.jsp ">
          </HEAD>
          <BODY>
          <H3>Welcome World!</H3>
          <UL>
          <LI><a href="/logon/logon.do">Sign in</a></LI>
          </UL>
          <IMG src='struts-power.gif' alt='Powered by Struts'>
          </BODY>
          </HTML>

          --------------------------------------------------------------------------------------------------------------------------

          <%@ taglib uri="/tags/struts-html" prefix="html" %>
          (參看Welcome.jsp部分)

          <HTML>
          <HEAD>
          <TITLE>Sign in, Please!</TITLE>
          </HEAD>
          <BODY>
          <html:errors/>
          <html:formaction="/LogonSubmit" focus="username">
          (<html:form> 標簽會生成一個HTML表單來使用戶輸入數據。其action屬性指向Struts配置中的某個ActionMapping對象,該對象決定了使用哪個javabean來填充HTML控件,同時該javabean也是Srtuts框架結構的一個ActionForm類)
          <TABLE border="0" width="100%">
          <TR>
          <TH align="right">Username:</TH>
          <TD align="left"><html:textproperty="username"/></TD>
          (<html:text>標簽創建一個HTML文本域來輸入框,同時,它還使用該表格對應的JavaBean中屬性名為username的屬性值來進行自我填充。)
          </TR>
          <TR>
          <TH align="right">Password:</TH>
          <TD align="left"><html:passwordproperty="password"/></TD>

          </TR>
          <TR>
          <TD align="right"><html:submit/></TD>
          <TD align="left"><html:reset/></TD>
          </TR>
          </TABLE>
          </html:form>
          </BODY>
          </HTML>
          ---------------------------------------------------------------------------------------------------------

          Struts中的 ?struts-config.xml的配置
          ActionMapping的配置元素
          ?path -?????? 該ActionMapping的唯一標識符,它包括對應的Web地址 (不包括擴展名.do)
          ?type?-?????? 當請求該路徑時,調用的Action對象
          ?name?-? ?? HTML表單對應的JavaBean(ActionForm)
          ?scope?-???? 定義了存儲該JavaBean在請求中(request)還是在會話中(session)
          ?validate?- 定義了在調用Action對象前是否調用JavaBean上的validate方法
          ?input -????? 定義了當validate方法返回false時要轉移到的地址
          (Struts中的很多命名都是很含糊的;比如ActionMapping中的name屬性并不是指該ActionMapping對象的名字,而是指該ActionMapping使用的JavaBean的名字;)?

          posted on 2006-10-02 11:23 小雨不打傘 閱讀(447) 評論(0)  編輯  收藏 所屬分類: web學習心得

          公告

          點擊這里給我發消息 QQ:232720563


            MSN:new_haihua@hotmail.com

          導航

          統計

          常用鏈接

          留言簿(2)

          隨筆分類(51)

          最新隨筆

          積分與排名

          最新評論

          閱讀排行榜

          主站蜘蛛池模板: 公主岭市| 昭苏县| 济南市| 静海县| 仁怀市| 新巴尔虎左旗| 仲巴县| 开阳县| 娄底市| 五指山市| 格尔木市| 宁津县| 卢氏县| 凤台县| 山阴县| 兴业县| 深圳市| 丰台区| 湘乡市| 囊谦县| 都昌县| 元谋县| 平阳县| 大足县| 于田县| 原平市| 韶关市| 宝兴县| 靖远县| 茌平县| 竹山县| 衡南县| 玉屏| 阿克陶县| 东乡| 都安| 轮台县| 廉江市| 丰城市| 莲花县| 屏东县|