日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
用WebWork注冊(cè)頁(yè)面建立過(guò)程

Web 應(yīng)用程序的設(shè)計(jì)開發(fā)是復(fù)雜并且費(fèi)時(shí)的。然而,你能夠通過(guò)運(yùn)用一種框架處理常見的Web應(yīng)用程序來(lái)簡(jiǎn)化開發(fā)流程。許多開源Web應(yīng)用框架能夠做到這一點(diǎn)甚至更好一些。這些開發(fā)框架中最好的一個(gè)就是WebWork,是開源項(xiàng)目中OpenSymphony組的一個(gè)Web應(yīng)用開發(fā)框架。

目前創(chuàng)新互聯(lián)建站已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁(yè)空間、網(wǎng)站運(yùn)營(yíng)、企業(yè)網(wǎng)站設(shè)計(jì)、陜西網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

WebWork的最大優(yōu)點(diǎn)是它的簡(jiǎn)單性和靈活性。WebWork有一個(gè)很小的API,它使開發(fā)者可以迅速進(jìn)行開發(fā)工作。WebWork是許多特性和適用性的組合,包括使用variour view技術(shù),例如JavaServer Pages(JSP),Velocity,Extensible Stylesheet Language Transformations Specification(XSLT)和JASPerReporters。WebWork擁有一個(gè)活躍的社區(qū),有許多文章、開發(fā)者和用戶。

注意:本文基于WebWork1.3.0 release candidate 2(RC2)。為了使用本文提供的例子,你需要在你的應(yīng)用服務(wù)器的webapps目錄下建立文件夾,將例子拷貝至新的文件夾下,同時(shí)將所需的jar文件從WebWork distribution拷貝至WEB-INF/lib目錄。在此處下載WebWork和本文相關(guān)的源代碼。

------
actions

WebWork的一個(gè)最重要的特色就是Action接口。WebWork actions通過(guò)在頁(yè)面(視圖)和商業(yè)邏輯間提供mapping來(lái)控制Web應(yīng)用程序流程。在WebWork中,提交窗體到一個(gè)action URI(Uniform Resource Identifier);這個(gè)URI指向一個(gè)相應(yīng)的action;action執(zhí)行;用戶可以前進(jìn)到相應(yīng)的視圖。

下述class,LoginAction,是WebWork處理基于Web應(yīng)用的注冊(cè)窗體的例子。LoginAction擴(kuò)展了ActionSupport。它是一個(gè)基類,提供了處理錯(cuò)誤、視圖映射、和許多有用的功能。

 
 
 
  1. import webwork.action.*;  
  2. public class LoginAction extends ActionSupport  
  3. {  
  4. private String userName;  
  5. private String passWord;   
  6. public String getPassword()  
  7. {    
  8. return password;    
  9. }   
  10.  public String getUserName()   
  11. {   
  12. return userName;    
  13. }   
  14. public void setPassword(String password)  
  15. {    
  16. this.password = password;    
  17. }  
  18. public void setUserName(String userName)  
  19. {    
  20. this.userName = userName;   
  21. }   
  22. public String doExecute()   
  23. {    
  24. return SUCCESS;    
  25. }    
  26. public void doValidation()   
  27. {     
  28. if (userName == null  userName.length() < 1)  
  29.  addError("UserName", "Please enter username.");    
  30. if (password == null  password.length() < 1)  
  31.  addError("Password", "Please enter password.");   
  32. }  

 LoginAction包括了兩個(gè)JavaBean屬性,password和username。

WebWork把數(shù)據(jù)從屬性中放置到你的視圖中并且自動(dòng)解析送到action的參數(shù)來(lái)設(shè)置屬性值。

LoginAction重載了ActionSupport的兩個(gè)方法:doValidation()和doExecute()。doValidation()方法驗(yàn)證參數(shù),doExecute()方法讓用戶前進(jìn)到相應(yīng)的視圖。doExecute()方法返回一個(gè)字符串,如果所有的處理是成功的,返回常量success。如果有任何問題發(fā)生,在用戶輸入視圖上返回常量input。在LoginAction的doValidation()方法中調(diào)用addError指出了一個(gè)認(rèn)證問題并且讓用戶返回INPUT視圖。

---------

view mapping

WebWork有兩種方法從map到視圖:通過(guò)一個(gè)Action.XML文件或者一個(gè)views.properties文件。每一種動(dòng)作應(yīng)該具有一個(gè)INPUT視圖和一個(gè)SUCCESS視圖。下述Action.xml文件定義了兩個(gè)actions,loginJSP和loginVelocity。這兩個(gè)action都使用了LoginAction類。如果LoginAction返回SUCCESS,這兩個(gè)action使用LoginAction類并且使用戶轉(zhuǎn)向success.Html。如果LoginAction返回INPUT,action轉(zhuǎn)向相應(yīng)的INPUT視圖,或者login.jsp、或者login.vm;

 
 
 
  1.  
  2.  
  3. login.jsp  
  4. success.html   
  5.  
  6.    
  7. login.vm     
  8. success.html   
  9.  
  10.  

視圖

盡管WebWork對(duì)于許多不同的視圖技術(shù)提供了支持,但是最為常見的是JSP和Velociy。以下頁(yè)面是兩個(gè)注冊(cè)頁(yè)面的例子--一個(gè)使用了JSP另一個(gè)使用了Velocity。每個(gè)頁(yè)面都包括了一個(gè)用戶部分和一個(gè)密碼部分,這兩部分提交給WebWork action。

Login.jsp頁(yè)面通過(guò)使用WebWork標(biāo)記庫(kù)來(lái)建立和處理以上兩個(gè)部分,并且通過(guò)錯(cuò)誤收集器來(lái)處理錯(cuò)誤。webwork:textfield 和 webwork:password標(biāo)記建立了text和password部分,webwork:iterator標(biāo)記處理從LoginAction返回的錯(cuò)誤。 webwork:property標(biāo)記設(shè)置username,password和errors屬性。

 
 
 
  1. <%@ taglib uri="webwork" prefix="webwork" %>  
  2.  
  3.  
  4. WebWork JSP Example  
  5.  
  6.     
  7.       
  8.         
  9.         
  10.       
  11.       
  12.     
  13.     
  14.       

  15.     
  16.     
  17.  
  18.  

login.vm頁(yè)面使用了Velocity模板語(yǔ)言來(lái)建立域并且處理錯(cuò)誤。

在Velocity中,$符號(hào)表明了一個(gè)參考。!符號(hào)告訴Velocity如果參考為空,那么什么都不顯示。#符號(hào)表示了一個(gè)指令。在下述例子中,$!userName和$!password表明參考引用了LoginAction中的username和password;#foreach在錯(cuò)誤處理屬性中指示了循環(huán)。

 
 
 
  1.  
  2.    
  3. WebWork Velocity Example  
  4.     
  5.     
  6.  
  7.       
  8.       
  9.     
  10.     
  11. #foreach ($error in $errors)  

  12. $error    
  13. #end    
  14.  
  15.  

開始工作!

WebWork是一個(gè)易用的、靈活的、功能強(qiáng)大的開源Web應(yīng)用框架,本文介紹了它的基本功能。訪問OpenSympony的網(wǎng)站去學(xué)習(xí)并且下載最新版本的WebWork。你下載完WebWork后,到Jakarta的網(wǎng)站的上部去尋找Velocity,一種簡(jiǎn)單、快速的開源引擎,它是你在網(wǎng)頁(yè)中使用JSP的另一個(gè)選擇。
-----------------
作者介紹

Erik Swenson 是Open Source Software Solutions的顧問和建立者。他主要研究使用開源軟件和組件來(lái)進(jìn)行java開發(fā)。此外,他參與開發(fā)了開源項(xiàng)目JasperEdit和OpenReports。
------------------
資源

下載本文相關(guān)的源代碼

http://www.javaworld.com/javaworld/jw-03-2003/opensource/jw-0307-opensourceprofile.zip

從OpenSymphony網(wǎng)站下載WebWork:

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

Velocity 是Apache Jakarta項(xiàng)目的一部分,從以下地址下載:

http://jakarta.apache.org/velocity/index.html

“使用Velocity模板引擎” Geir Magnusson Jr. (JavaWorld,  2001年12月):

http://www.javaworld.com/javaworld/jw-12-2001/jw-1228-velocity.html

其他開源Web應(yīng)用框架包括:

Maverick:

http://mav.sourceforge.net/

Struts:

http://jakarta.apache.org/struts/index.html

JasperReports homepage:

http://jasperreports.sourceforge.net/

【編輯推薦】

  1. WebWork注入Servlet方法詳解
  2. WebWork中返回INPUT的原因
  3. WebWork如何實(shí)現(xiàn)文件上傳配置過(guò)程
  4. 通過(guò)WebWork實(shí)現(xiàn)HelloWorld
  5. WebWork與Spring+Hibernate的整合

網(wǎng)站名稱:用WebWork注冊(cè)頁(yè)面建立過(guò)程
URL標(biāo)題:http://m.5511xx.com/article/cdoodoj.html