中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

WebWork工作方式是什么

發布時間:2021-07-14 16:07:39 來源:億速云 閱讀:235 作者:chen 欄目:編程語言

本篇內容介紹了“WebWork工作方式是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

WebWork目前沒有集成很好的IDE工具,只能手動配置。可以在http://www.opensymphony.com/webwork/下載到***的WebWork開發包。

以Eclipse+webwork-2.2.4為例配置步驟如下:

1、創建web工程

2、拷貝WebWork的jar文件到web工程的lib目錄,必須的jar文件包括Webwork-2.2.4.jar和WebWork的lib目錄下的default目錄中的所有jar文件。

3、修改web.xml,添加WebWork過濾器,固定內容如下:

WebWork com.opensymphony.WebWork.dispatcher.FilterDispatcher WebWork /*

以上內容,WebWork包中提供了模板文件,可以直接拷貝過來修改一下即可。

模板文件路徑:Webwork-2.2.4\webapps\blank\src\webapp\WEB-INF\web.xml

4、在src目錄下創建xwork.xml文件(路徑和文件名均是固定寫法),內容如下:

/WEB-INF/pages/home.jsp

以上內容,WebWork工作方式中提供了模板文件,可以直接拷貝過來修改一下即可。

模板文件路徑:

Webwork-2.2.4\webapps\blank\src\webapp\WEB-INF\classes\xwork.xml

其中被包含的webwork-default.xml文件不要隨意修改(包括里面內容的順序),修改后WebWork可能會無法正常工作。

package標簽使得配置文件也可以分包存放(與代碼的包不同)。

action標簽的name屬性就是表單提交時使用的action的名字,class屬性代表處理請求的action類。

method屬性(可選)可以指定執行的方法名,這是一個非常好用的屬性,在Struts中每個邏輯處理單元都要單獨寫一個action類,這樣一個工程可能會有很多action類,而每個action只做一個處理,使用method屬性可以只寫一個action類,根據需要指定不同的方法處理請求即可。

result標簽指定action類執行完后轉向的顯示頁面。

result標簽也可以指定使用模板輸出顯示內容,如Freemarker或Velocity。

5、創建action類,需要手工指定實現com.opensymphony.xwork.Action接口。

在Struts中如果有表單,則對應表單需要有formbean,在WebWork中formbean則不是必須的,可以將表單提交的屬性作為變量,都寫到action類中,但必須為變量添加set和get方法,WebWork工作方式中使用類似Spring的注入功能實現變量的賦值。

action類也可以指定使用單獨的bean類實現類似formbean的功能,只需在action類中將此bean類的對象實例化好,并設置set和get方法即可。

如果不使用formbean則表單提交時表單元素的name屬性值要和action類中相應的變量名相同,如果使用formbean則表單元素的name屬性值為“bean類名.屬性名”。

com.opensymphony.xwork.Action接口中的execute方法并沒有request和response參數,而是將請求和響應與web容器剝離,單獨封裝起來,由WebWork核心控制器管理,所以在處理請求時使用的request或session都要從WebWork上下文中獲取。

execute方法返回的是一個字符串而不是像Struts一樣封裝的ActionMapping對象,返回的字符串根據xwork.xml文件中對應的action標簽中的result標簽找到指定的顯示頁面。

com.opensymphony.xwork.Action接口中定義了一些常用的常量用來表示頁面的轉向,常量的值與常量名相同。例如SUCCESS表示執行成功。WebWork默認的也是轉發而不是重定向。

最簡單的action類的代碼如下:

import java.util.Map;

import com.opensymphony.xwork.Action;

import com.opensymphony.xwork.ActionContext;

public class SampleAction implements Action { private String param = null;

//聲明變量(取代formbean的方式) /*變量的get方法*/

public String getParam() { return param; } /*變量的set方法*/

public void setParam(String param) { this.param = param; }

/*實現Action接口的execute方法,調用Model層實現業務邏輯*/

public String execute() throws Exception { Map session = ActionContext.getContext().getSession();

session.put("anyParam",getParam()); return SUCCESS;

//指定的顯示頁面在xwork.xml文件中設置 } }

6、至此基本的WebWork應用已經配置好了,創建Model層和View層實現業務邏輯即可。

WebWork的工作流程: WebWok還有一個可選的配置文件,文件名為webwork.properties,同樣是放在src目錄下。WebWork2.X在Tomcat5.5以上或Resin3可以正常運行,對中文支持不好,需要手動轉換編碼,可以添加如下配置信息:

webwork.locale=zh_CN webwork.i18n.encoding=GBK webwork中的action類缺省后綴是action,

也可以通過配置文件修改 webwork.action.extension=action 對webwork.properties文件詳細的配置說明可以參考: http://wiki.javascud.org/display/ww2cndoc/WebWork.properties

WebWork2.2.4以后就不再升級,已合并到Struts2中,后續版本只是打補丁而已。

Struts2的核心就是使用的WebWork,了解WebWork的工作方式可以輕松的過渡到Struts2。

“WebWork工作方式是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临朐县| 五华县| 武功县| 高雄市| 红河县| 泸溪县| 武强县| 德钦县| 依兰县| 塔城市| 灌云县| 惠来县| 哈巴河县| 灵川县| 永年县| 巢湖市| 剑河县| 榆树市| 嘉兴市| 集安市| 鄂尔多斯市| 繁昌县| 泰兴市| 阳曲县| 肃北| 淮滨县| 洞头县| 西贡区| 清流县| 出国| 光山县| 军事| 西昌市| 大宁县| 汕尾市| 两当县| 郎溪县| 冷水江市| 宁蒗| 拜泉县| 丽水市|