<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 44,  comments - 48,  trackbacks - 0
    ?簡介

    Jakarta-StrutsApache軟件組織提供的一項開放源代碼項目,它為Java Web應用提供了模型-視圖-控制器(MVC)框架,尤其適用于開發大型可擴展的Web應用. StrutsWeb應用提供了一個通用的框架,使得開發人員可以把精力集中在如何解決實際業務問題上. 此外,Struts框架提供了許多可供擴展和定制的地方使得應用程序可以方便的擴展框架,來更好的適應用戶的實際需求.

    本文是一篇介紹利用MyEclipse進行Struts開發的基礎教程,通過詳細的描述和大量的圖片來展現Struts開發的具體過程. 這里所采用的是我們經常會遇到的用戶登陸的實例,如果用戶登陸成功進入程序的主界面(main.jsp),否則返回登陸頁面并提示錯誤信息.

    n??????? 創建Web項目

    在菜單中依次點擊FileNewProject,然后在彈出的窗口中選擇J2EEWeb Project,啟動Web項目創建向導。

    點擊下一步,在項目名稱中,我們輸入StrutsDemo,然后修改Context root URL/hello,其他我們使用默認的設置,最后點擊Finish按鈕完成創建工作.

    在項目創建后,我們需要讓它支持Struts功能. 在菜單中選擇MyEclipseAdd Struts Capabilities. 在彈出的對話框中, Struts specification修改為1.2,Base package for new classes修改為我們喜歡的包名,com.study.struts,修改完成后點擊Finish按鈕.

    Package Explore,我們可以看到增加了Struts能力后,MyEclipseWeb項目中增加了很多jar文件和tld文件,請參考下圖:

    n??????? 創建JSP文件

    在我們的登陸程序中一共需要兩個JSP文件. 一個是index.jsp,作為用戶登陸的界面和登陸失敗后的返回界面. 一個是main.jsp,作為登陸成功后的主界面.

    Package Explore中雙擊struts-config.xml將其打開,在源代碼窗口中點擊左側工具欄中的

    ,在彈出的JSP文件創建向導中修改文件名為index.jsp,選擇5]Standard JSP using Struts 1.2 with a form模板,然后點擊Finish按鈕. MyEclipse會為我們創建一個名為index.jsp的帶一個FormJSP文件.

    按照同樣的方法創建main.jsp. 由于我們只是簡單的在主界面中顯示成功登陸的信息,因此在創建的時候,我們選擇的是第一個缺省的模板.

    JSP文件創建后,我們可以根據自己的需要來修改其中的內容. 對于index.jsp,我們修改Formaction屬性和提交參數的名字, 并增加了標簽,可參考下面的代碼:

    ??? <html:form action="/login.do" method="post" focus="login">

    ????? <center><html:errors/>center>

    ????? <table border="0">

    ??????? <tr>

    ????????? <td>Name:td>

    ????????? <td><html:text property="name" />td>

    ??????? tr>

    ??????? <tr>

    ????????? <td>Password:td>

    ????????? <td><html:password property="password" />td>

    ??????? tr>

    ??????? <tr>

    ????????? <td colspan="2" align="center"><html:submit />td>

    ??????? tr>

    ????? table>

    html:form>

    ?????? 對于main.jsp,我們修改中的輸出信息,提示用戶登陸成功,代碼如下:

    ? ? <body>

    ?? ???? ?You have logged in!<br>

    ? ? body>

    ?????? 保存兩個JSP文件和struts-config.xml文件.

    n??????? 創建ActionForm

    在我們的登陸程序中需要用戶提交用戶名和密碼,因此我們需要創建一個ActionForm Bean來保存提交的HTML表單數據.

    將源代碼窗口中的標簽切換到struts-config.xml,右上角的Outline窗口內容如下:

    選中其中的form-beans,右鍵單擊,在彈出的菜單中選擇New Form. Form Bean創建向導對話框中,輸入Use case的名字login,然后在下方的Form Properties中增加namepassword兩個屬性.

    ?

    n??????? 創建Action

    ?????? 在完成上面的創建后,我們接下來創建Action. 在源代碼窗口中切換到struts-config.xml文件,點擊左側工具欄中的.?在彈出的創建向導中輸入Use case名字為Login.

    ?????? 在對話框的下部Optional Details,點擊Name行末的Browse按鈕,選中我們剛才創建的loginForm.

    點擊Input Source行末的Browse按鈕,在彈出的對話框中選中index.jsp.

    Optional Details標簽切換到Forwards,點擊Add按鈕增加一個局部的Forward.

    這里的success是我們給Forward的名字,你也可以使用其它你喜歡的名字. 增加后如下:

    完成新建Action的設置后如下圖:

    點擊Finish按鈕后,MyEclipse會為我們創建一個名叫LoginAction.java的文件,我們可以根據自己的需要來實現具體的驗證邏輯. 這里,我們僅僅通過登陸的名字是否為hello來判斷. 如果不是提示登陸失敗. 代碼參考如下:??

    ????????????? ActionMessages errors=new ActionMessages();

    ?????????????

    ????????????? LoginForm loginForm = (LoginForm) form;???????

    ????????????? String username=loginForm.getName();

    ?????????????

    ????????????? if(username.equals("hello")) {

    ???????????????????? return mapping.findForward("success");

    ????????????? } else {

    ???????????????????? errors.add("username",new ActionMessage("error.msg"));

    ???????????????????? saveErrors(request,errors);

    ???????????????????? return (new ActionForward(mapping.getInput()));

    ????????????? }

    從上面的代碼中我們可以看到,當用戶登陸失敗后會使用一個鍵值為error.msgActionMessage. 因此,我們在Package Explore中找到ApplicationResources.properties文件并雙擊打開,輸入以下內容并保存.

    error.msg=Login Failed

    在完成了上述所有的工作后,我們可以看到圖示化的struts-config.xml如下:

    n??????? 部署和測試應用程序

    這里StrutsDemo的部署同其他的Web應用程序一樣,我們就不在贅述了,具體的方法可以參閱MyEclipse系列文章的第二篇Web項目的開發.

    部署成功后,IE的地址欄中輸入http://localhost:8080/hello/index.jsp并回車.

    我們首先驗證登陸失敗的場景. 當我們輸入的用戶名不是hello,應返回到登陸頁面并提示登陸失敗. Name中輸入abcd,點擊Submit按鈕.

    我們可以看到又回到了登陸頁面,并且出現了Login Failed的提示信息. 修改用戶名為hello,然后點擊Submit按鈕.

    .

    posted on 2006-08-29 13:27 摩西 閱讀(587) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 免费特级黄毛片在线成人观看| 18禁在线无遮挡免费观看网站| 香蕉97超级碰碰碰免费公| 亚洲AV无码一区二区三区DV| 中文字幕在线观看免费| 久久亚洲AV无码西西人体| yellow免费网站| 久久影院亚洲一区| 日本高清免费观看| 亚洲图片一区二区| 3d动漫精品啪啪一区二区免费| 亚洲网站免费观看| 一二三四免费观看在线电影 | 亚洲色成人网一二三区| 久久免费视频99| 亚洲一级毛片中文字幕| 国外成人免费高清激情视频| 亚洲乱妇熟女爽到高潮的片| 国产一区在线观看免费| 亚洲天堂免费在线视频| 亚洲AV日韩AV永久无码久久| 亚洲精品视频在线免费| 亚洲午夜理论片在线观看| 免费一级毛片不卡在线播放| 黄桃AV无码免费一区二区三区| 亚洲乱亚洲乱妇无码麻豆| 久久久久久国产精品免费无码| 亚洲欧洲尹人香蕉综合| 我要看WWW免费看插插视频| 久久水蜜桃亚洲AV无码精品| 一级毛片直播亚洲| 毛片免费在线观看| 狠狠色伊人亚洲综合网站色| 免费看小12萝裸体视频国产| 久久WWW免费人成—看片| 亚洲美女视频网站| 免费在线观看日韩| 99久久人妻精品免费一区| 亚洲精品9999久久久久无码 | 在线a亚洲v天堂网2018| 日本中文字幕免费高清视频|