亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

Struts初級教程(1)-用戶登錄實例

2024-09-05 00:17:22
字體:
來源:轉載
供稿:網友
    本教程從易用,實用的目的出發,模擬完成實際開發中常用的模塊,讓大家能快速上手struts,下面我們正式開式吧。
    Jsp的Struts是一個基于Sun J2EE平臺的MVC框架,主要是采用Servlet和JSP技術來實現的。
    Struts把Servlet、JSP、自定義標簽和信息資源(message resources)整合到一個統一的框架中,開發人員利用其進行開發時不用再自己編碼實現全套MVC模式,極大的節省了時間。
    本教程主要包括6個模塊:
   1、登錄驗證實例
   2、解決中文亂碼問題實例
   3、連數據庫實例
   4、國際化
   5、驗證數據實例
   6、模塊使用實例
   7、制作簡單留言板實例
    對struts做由淺入深的介紹,讓大家最終撐握它。

一、普通的登錄驗證實例

我們以結果為導向,首先大家先看看要完成的效果圖,對接下來要做的事情有個清晰的認識。
效果圖:
       1、如圖鍵入:


顯示結果如下圖:


如果您輸入的是合法的話,則如下圖:


開發步驟:

A、首先建立一工程,選擇web模塊,最后再加載struts包即可。在工程中新建一包,命名為actions,在下面新建一類文件,命名為LoginAction,里面一定要重寫execute方法,注意參數的順序及返回類型都是不可以變化的。

在struts中action類起著控制轉向的作用,當我們輸入用戶名與密碼并點了提交按鈕后,需要交給控制器來決斷我們是轉向到登陸成功頁還是登陸失敗頁。LoginAction在此就起這么個功能,具體代碼請依照如下所示:

public class LoginAction extends Action {

    public ActionForward execute(ActionMapping actionMapping,
                                  ActionForm actionForm,
                                  HttpServletRequest servletRequest,
                                  HttpServletResponse serveltResponse) 
    {
        LoginActionForm loginform = (LoginActionForm) actionForm;
        String username = loginform.getUsername();
        String userpass = loginform.getUserpass();
        boolean flag = false;
        String actionpath = "";
        if (username.equals("123") && userpass.equals("123")) {
            actionpath = "success";
        } else {
            actionpath = "error";
        }
        return actionMapping.findForward(actionpath);
    }
 }

在“LoginAction”中,我們得到一個ActionForm對象,并把它強轉成LoginActionForm,
待我們處理,即通過ActionForm的匹配名稱的表單自動封裝機制,取得用戶輸入用戶名、密碼。
我們返回的結果將會被ActionFormward對象所包裝,比如這兒的“success“表示用戶合法,“error”表示用戶不合法,這個字符串將決定著頁面的流程控制。它并不是一個具體存在的頁面,它是如何跟一個具體的頁面關聯上的呢?

我們來分析幾點:
1、 你在操作時記住的概念:
Struts的核心是Action,而Action的核心就是一個配置文件——struts-config.xml。它既然是核心就很重要哦。
2、 Maping映射:
a)         actionMapping.findForward(“映射名稱”); 它返回的是一個ActionForward對象
b)        struts-config.xml里面action節點下的:<forward name="映射名稱" path="/頁面名稱"/>
實現機制:Struts會根據你傳進actionMapping.findForward(“映射名稱”),它會到你當前action節點下去找forward這個節點,并把你傳進的參數與這個節點的name屬性進行匹配。如果相等它就會跳到這個節點的path所指定的頁面。
       例:
Action:actionMapping.findForward(“success”)
Struts-config.xml:<forward name="success" path="/success.jsp"/>
如果是這種情況的話,它就會轉發到success.jsp頁面。
      注意:
a)         方法的參數值和name節點的值對應,
b)        Path所指定的頁面,前面必須加上“/“

       B、在前面我們提到了ActionForm,所以我們還需要建立一個類文件,這個類文件將封裝頁面用戶輸入的用戶名、和密碼。
注意:
1、這個類必須繼承ActionForm類,它將完成與頁面的自動封裝。
2、類中的屬性名稱一定要和頁面的輸入框的名稱對應,為了自動封裝的匹配工作。
3、這個類中一定要提供所有與屬性相匹配的set 和 get方法。

前面寫了這些代碼,看上去還是有些雜亂無章,怎么把它們關聯起來呢?又怎么調用這些代碼呢?呵呵,群龍不會無首的,下面就一起來關注struts的裝配文件,它可是相當于struts的總司令!

C、核心部分,跳轉控制Struts-config.xml部分
<struts-config>
 <form-beans>
    <form-bean name="loginActionForm" type="formbeans.LoginActionForm" />
 </form-beans>
 <action-mappings>
<action path="/login" name="loginActionForm"  type="actions.LoginAction">
      <forward name="success" path="/success.jsp"/>
      <forward name="error" path="/wrong.jsp"/>
    </action>
 </action-mappings>
</struts-config>

我們對struts.xml做一下相應的介紹吧,如下:
<form-bean>:用來配置一個ActionForm Bean。常用配置的幾個屬性:
name:指定該ActionForm Bean的唯一標識符,整個Struts框架用該標識符來引用這個Bean。該屬性是必需的
         type:指定ActionForm類的全限定名。該屬性是必需的
<action>:用來描述特定的請求路徑到相應的Action類的映射。常用配置的幾個屬性:
  input:    指定包含輸入表單的URL路徑。當表單驗證失敗時,將把請求轉發到該URL。
  name:   指定和該Action關聯的ActionForm Bean的名字。
  path:     指定訪問Action的路徑,它以“/”開頭,沒有擴展名。
  Scope: 指定ActionForm Bean的存在范圍。(session | request)
  Validate:指定是否要先調用ActionForm Bean的validate()方法。默認值為true
Action的子元素<forward>常用配置的幾個屬性:
  name:   指定轉發路徑的邏輯名。必需的
  path:     指定轉發(或重定向)的URI,必須以”/”開頭。必需的
redirect:當此項為true時,表示執行重定向操作。為false時表示執行請求轉發操作。默認值為false

D、頁面login.jsp,用戶登錄頁面,提供用戶輸入功能。具體代碼如下所示:
<form method="post" action="login.do">
 請輸入姓名:<input type="text" name="username" value=""/><br />
 請輸入密碼:<input type="password" name="userpass" value=""/><br>
<input type="submit" name="Submit" value="Submit">
<input type="reset" value="Reset">
</form>

注意:
1、action后面的login.do就是struts-config.xml里面你要訪問的action節點path的值哦
2、切記哦,如果你請求的URL的引用了formbean的話,這里的名稱一定要對應哦。
還有success.jsp 、wrong.jsp分別代表登錄成功和登錄失敗頁面。就不再多說啦!
啟動Tomcat,連接上您的應用程序網址,例如:http://localhost:8080/Struts1_Login/login.jsp,填入用戶名、密碼,并送出窗體,您的歡迎頁面就會顯示了。
       怎么樣,本章節是不是比較容易?其實struts就這么簡單,能完成本章節的要求吧!現在你已經上手啦!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩av中文字幕在线播放| 97成人精品视频在线观看| 精品视频在线播放色网色视频| 91国内产香蕉| 中文字幕日韩高清| 九九久久综合网站| 一道本无吗dⅴd在线播放一区| 一区二区中文字幕| 51色欧美片视频在线观看| 久久人人爽人人爽人人片av高清| 国产精品私拍pans大尺度在线| 国产一区二区三区四区福利| 久青草国产97香蕉在线视频| 国产在线98福利播放视频| 亚洲精品女av网站| 热久久99这里有精品| 国产狼人综合免费视频| 国产一区二区在线免费视频| 日日骚久久av| 一区二区三区视频免费| 韩国精品久久久999| 日韩高清av在线| 51精品在线观看| 国产日韩精品综合网站| 色妞欧美日韩在线| 亚洲一区二区三区sesese| 中文字幕精品—区二区| 亚洲视频日韩精品| 成人黄色免费网站在线观看| 精品国产一区久久久| 川上优av一区二区线观看| 国产精品久久久久免费a∨大胸| 亚洲自拍偷拍色片视频| 综合国产在线观看| 久久视频在线播放| 欧美黑人性生活视频| 伊人伊人伊人久久| 日韩在线视频中文字幕| 亚洲免费人成在线视频观看| 97免费在线视频| 国产免费成人av| 久久成人精品一区二区三区| 中文字幕亚洲字幕| 国产91网红主播在线观看| 欧美另类高清videos| 欧美电影在线播放| 操人视频在线观看欧美| 国产视频综合在线| 这里只有精品视频在线| 91超碰中文字幕久久精品| 国产原创欧美精品| 色伦专区97中文字幕| 欧美亚洲国产日韩2020| 亚洲的天堂在线中文字幕| 国产精品视频免费在线观看| 亚洲国产美女精品久久久久∴| 国语自产精品视频在线看| 韩国精品美女www爽爽爽视频| 国产香蕉精品视频一区二区三区| 日韩av黄色在线观看| 亚洲影影院av| 精品国产91久久久| 成人欧美在线视频| 日韩一区二区在线视频| 欧美视频国产精品| 欧美日韩在线观看视频| 91久久久亚洲精品| 91日韩在线视频| 亚洲人成绝费网站色www| 亚洲国产黄色片| 日韩电影大片中文字幕| 精品国偷自产在线视频| 欧美一区视频在线| 青草青草久热精品视频在线网站| 亚洲一区二区三区四区在线播放| 国产女人18毛片水18精品| 国产精品99久久久久久久久久久久| 久操成人在线视频| 国产亚洲精品美女| 日韩中文视频免费在线观看| 国产精品海角社区在线观看| 欧美成人午夜免费视在线看片| 国外日韩电影在线观看| 久久99热精品这里久久精品| 日韩中文字幕国产| 日本欧美精品在线| 日韩精品在线观看一区二区| 国产精品户外野外| 日韩精品在线私人| 国产精品视频久| 久久久久久久一区二区三区| 久久综合国产精品台湾中文娱乐网| 91国产精品视频在线| 在线电影av不卡网址| 欧美性猛交xxxx免费看| 久久久久国产精品一区| 国产精品久久久久久中文字| 国产精品麻豆va在线播放| 亚洲国产中文字幕久久网| 国产午夜精品视频免费不卡69堂| 国产精品精品国产| 欧美性videos高清精品| 国产亚洲精品久久久久久| 97精品伊人久久久大香线蕉| 中文字幕精品在线视频| 日韩中文在线观看| 精品国偷自产在线| 91国内免费在线视频| 欧美大肥婆大肥bbbbb| 欧美一乱一性一交一视频| 欧美色欧美亚洲高清在线视频| 国产一区二区三区高清在线观看| 777精品视频| 亚洲美女视频网| 久久精品视频播放| 日韩免费看的电影电视剧大全| 亚洲国产成人一区| 亚洲xxxx妇黄裸体| 久久精视频免费在线久久完整在线看| 欧美在线视频一区二区| 亚洲美女精品成人在线视频| 91po在线观看91精品国产性色| 亚洲欧美制服综合另类| 三级精品视频久久久久| 黄色成人在线免费| 国产欧美精品xxxx另类| 亚洲欧美一区二区三区在线| 国产aⅴ夜夜欢一区二区三区| 欧美有码在线观看| 亚洲乱亚洲乱妇无码| 国产精品美女久久久久av超清| 国产精品视频播放| 欧美猛交ⅹxxx乱大交视频| 日韩在线激情视频| 亚洲激情电影中文字幕| 69av在线播放| 91av在线免费观看视频| 日本免费一区二区三区视频观看| 一区二区三区四区在线观看视频| 亚洲毛茸茸少妇高潮呻吟| 日韩免费在线播放| 欧美日韩中文在线观看| 欧美激情第三页| 国产99久久精品一区二区永久免费| 亚洲在线观看视频网站| 欧美裸身视频免费观看| 日韩欧美在线一区| 欧美黄网免费在线观看| 日韩成人在线免费观看| 欧美成人激情视频免费观看| 成人性生交大片免费观看嘿嘿视频| 欧美在线不卡区| 亚洲第一区中文99精品| 欧美性极品xxxx娇小| 青草青草久热精品视频在线观看| 欧美电影在线观看高清| 国产精品视频26uuu| 亚洲成色777777在线观看影院| 国产精品99久久久久久www| 国产视频精品免费播放| 欧美在线免费视频| 日韩电影中文字幕在线观看| 欧美日韩国产在线播放| 欧美色图在线视频|