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

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

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

    速動畫教程第二十三集 WebWork2 示例

    Posted on 2006-07-15 16:08 oksonic 閱讀(3849) 評論(2)  編輯  收藏

    速動畫教程第二十三集 WebWork2 示例


    下載地址: http://this.oksonic.cn
    ?

    準備工作:

    ??? Eclipse3.1.1?? MyEclipse4.1.1?? Tomcat5.1.x

    ??? 下載 WebWork 完整包有 52M,現在最新版是 2.2.2

    ??? http://www.opensymphony.com/webwork/

    ?

    新建工程 名稱為 test ,使用 j2ee 1.4

    解壓包中的 webwork-2.2.2.jar 文件到項目的 lib 目錄

    解壓包中的 lib\default\*.jar 文件到項目的 lib 目錄,注:如果使用的是2.1.x的包需要解壓的路徑為 lib\core\*.jar

    ?

    配置 web.xml 文件,文件內容如下:

    <? xml version = "1.0" encoding = "UTF-8" ?>

    < web-app version = "2.4" xmlns = "http://java.sun.com/xml/ns/j2ee" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://java.sun.com/xml/ns/j2ee

    ??? http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >

    ??? < servlet >

    ?????? < servlet-name > webwork </ servlet-name >

    ?????? < servlet-class > com.opensymphony.webwork.dispatcher.ServletDispatcher </ servlet-class >

    ??? </ servlet >

    ??? < servlet-mapping >

    ?????? < servlet-name > webwork </ servlet-name >

    ?????? < url-pattern > *.action </ url-pattern >

    ??? </ servlet-mapping >

    </ web-app >

    WebWork 的Action是以 *.action 方式進行處理的,而 Struts 是以 *.do 方式處理

    ?

    ?

    此示例需要使用到以下結構

    ?

    模型: User.java???????

    控制: LoginAction.java

    視圖: index.jsp 、 ok.jsp 、 error.jsp

    配置: xwork.xml

    ?

    新建 User.java 文件,內容如下:

    package com.test.model.bo;

    ?

    public class User {

    ?

    ??? private String userName;

    ??? private String userPwd;

    ???

    ??? public String getUserName() {

    ??????? return userName;

    ??? }

    ??? public void setUserName(String userName) {

    ??????? this.userName = userName;

    ??? }

    ??? public String getUserPwd() {

    ??????? return userPwd;

    ??? }

    ??? public void setUserPwd(String userPwd) {

    ??????? this.userPwd = userPwd;

    ??? }

    }

    ?

    新建一個 class 文件名為: LoginAction ,并實現 com.opensymphony.xwork.Action 接口,此類和 Struts Action 相當相似,不過是以接口的方式實現,而 Struts 的是 Action 是以繼承的方式實現,它們都有一個 execute() 方法

    ? 代碼如下:

    package com.test.web.action;

    ?

    import com.opensymphony.xwork.Action;

    import com.test.model.bo.User;

    ?

    public class LoginAction implements Action {

    ?

    ??? // 此屬性一定要進行初始化操作

    ??? private User user = new User();

    ???

    ??? public String execute() throws Exception {

    ??????? // 可以在這里調用Service層來進行驗證,這里只驗證用戶名

    ??????? if (user.getUserName().equals("oksonic"))

    ??????????? return this.SUCCESS;

    ??????? else

    ??????????? return this.ERROR;

    ??? }

    ?

    ??? public User getUser() {

    ??????? return user;

    ??? }

    ?

    }

    ?

    綠色字體為新增的一個屬性,并創建它的 get 方法

    ?

    src 目錄下新建一個 xwork.xml 文件,此文件相當于 Struts 的配置文件,文件內容如下:

    <! DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.0.dtd" >

    < xwork >

    ??? < include file = "webwork-default.xml" />

    ??? < package name = "default" extends = "webwork-default" >

    ?????? < action name = "login" class = "com.test.web.action.LoginAction" >

    ?????????? <!--? 這里的意思是登錄成功后跳轉到 /ok.jsp 頁面 -->

    ?????????? < result name = "success" type = "dispatcher" >

    ????????????? < param name = "location" > /ok.jsp </ param >

    ?????????? </ result >

    ???????????????????? <!--? 登錄失敗后跳轉到 / error .jsp 頁面 -->

    ?????????? < result name = "error" type = "dispatcher" >

    ????????????? < param name = "location" > /error.jsp </ param >

    ?????????? </ result >

    ?????????? <!--? 此段代碼為作用是將 request 請求的參數傳遞到 action -->

    ?????????? < interceptor-ref name = "params" />

    ?????? </ action >

    ??? </ package >

    </ xwork >

    ?

    ?

    新建三個 jsp 文件

    ?

    index.jsp 內容如下:

    < html >

    ??? < head >

    ?????? < title > INDEX </ title >

    ??? </ head >

    ?

    ??? < body >

    ??????

    ?????? < DIV align = "center" >

    ?????????? LOGIN

    ?????? </ DIV >

    ?????? < FORM action = "login.action" method = "post" >

    ?????????? < DIV align = "center" >

    ????????????? < TABLE border = "1" cellpadding = "0" cellspacing = "0" >

    ????????????????? < TR >

    ???????????????????? < TD >

    ???????????????????????? username:

    ???????????????????? </ TD >

    ???????????????????? < TD >

    ???????????????????????? < INPUT type = "text" size = "10" name = "user.userName" >

    ???????????????????? </ TD >

    ????????????????? </ TR >

    ????????????????? < TR >

    ???????????????????? < TD >

    ???????????????????????? password:

    ???????????????????? </ TD >

    ???????????????????? < TD >

    ???????????????????????? < INPUT type = "text" size = "10" name = "user.userPwd" >

    ???????????????????? </ TD >

    ????????????????? </ TR >

    ??? ????????????? < TR >

    ???????????????????? < TD colspan = "2" align = "center" >

    ???????????????????????? < INPUT type = "submit" value = "submit" name = "submit" >

    ???????????????????????? < INPUT type = "reset" value = "reset" name = "reset" >

    ???????????????????? </ TD >

    ????????????????? </ TR >

    ????????????? </ TABLE >

    ?????????? </ DIV >

    ?????? </ FORM >

    ??? </ body >

    </ html >

    ?

    這個頁面使用的全是 html 的語法, user.userPwd 為 Action 中 User 對像 的 userPwd 屬性

    ?

    ok.jsp 文件內容如下:

    <%@ taglib prefix = "ww" uri = "/webwork" %>

    < html >

    ??? < head >

    ?????? < title > OK </ title >

    ??? </ head >

    ??? < body >

    ?????? userName= < ww:property value = "user.userName" />

    ?????? < br >

    ?????? userPwd= < ww:property value = "user.userPwd" />

    ?????? < br >

    ??? </ body >

    </ html >

    ?

    這里使用了WebWork的標簽

    ?

    error.jsp 文件內容如下:

    < html >

    ??? < head >

    ?????? < title > ERROR </ title >

    ??? </ head >

    ??? < body >

    ?????? Error !!!

    ??? </ body >

    </ html >

    ?

    已經成功了?。?!,對于 webwork 我也是剛學了這么一點,以后再有什么研究成果會再次展示給大家的??!

    Feedback

    # re: 速動畫教程第二十三集 WebWork2 示例  回復  更多評論   

    2006-07-17 15:03 by wzywjy
    webwork2.2開始就建議使用Filter了,你怎么還在使用Servlet呀

    # re: 速動畫教程第二十三集 WebWork2 示例  回復  更多評論   

    2008-03-12 23:26 by 在職研究生
    我也是剛學了這么一點,以后再有什么研究成果會再次向大家學習

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


    網站導航:
     

    posts - 103, comments - 1104, trackbacks - 0, articles - 0

    Copyright © oksonic

    主站蜘蛛池模板: 亚洲天堂中文字幕在线| 亚洲精品一品区二品区三品区| 亚洲开心婷婷中文字幕| youjizz亚洲| 手机看片国产免费永久| 成人超污免费网站在线看| 亚洲人成网站在线观看播放| 在线aⅴ亚洲中文字幕| 中出五十路免费视频| 午夜视频免费成人| 久久精品夜色国产亚洲av| 色天使色婷婷在线影院亚洲| 99精品一区二区免费视频| 亚洲国产精品综合久久一线| 亚洲图片中文字幕| 两性色午夜视频免费播放| 国产精品麻豆免费版| 亚洲精品91在线| 成在人线av无码免费高潮水| 青青青青青青久久久免费观看| 亚洲欧洲日产国产综合网| 国产99精品一区二区三区免费 | 久久久久亚洲精品天堂久久久久久| 亚洲天堂一区二区三区四区| 少妇性饥渴无码A区免费| 国产在线观看免费完整版中文版 | 亚洲AV永久无码精品网站在线观看| 日本在线免费观看| 亚洲午夜成人精品电影在线观看| 国产成人精品日本亚洲11| 毛片在线播放免费观看| 亚洲综合国产精品第一页| 亚洲av无码一区二区三区四区 | 韩国18福利视频免费观看| 亚洲国产亚洲片在线观看播放| 免费人成在线观看视频高潮| 亚洲国产精品一区二区三区久久| 亚洲乱码中文字幕在线| 99在线精品视频观看免费| 久久亚洲精品成人av无码网站| 91成人免费福利网站在线|