freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

spring基礎教程-資料下載頁

2025-06-25 07:29本頁面
  

【正文】 ingleton= true )。 上配置資源綁定。在 userAction 類中,在完成一些操作后,會顯示“成功”或是“錯誤”頁面,這些信 息的鍵可以存放在這個應用的 ResourceBundle(或 文件中)。特別是:● ● ● 把這些鍵存入 web/WEBINF/下的 文件中。例如:=User has been saved successfully. =No user found with this id. =User successfully deleted.這個文件通過 中的messageresources元素進行加載。messageresources parameter=messages/運行 ant test Dtestcase=UserAction. 輸出結(jié)果如下:填充 JSP 文件,這樣可以通過瀏覽器來進行 CRUD 操作 jsp 文件( 和 )中添加代碼,這樣它們可以表示 actions 的結(jié)果。如果還事先準備,在 web 目錄下建一個文件 。添加一些代碼 你就可以看到數(shù)據(jù)庫中所有的用戶資料。在下面代碼中,第一行包含(include)了一個文件 。這個文件包含了應用所有 JSP Tag Library 的聲明。大部分是 Struts Tag,JSTL 和 SiteMesh(用來美化 JSP 頁面)。%@ include file=/%titleMyUsers ~ User List/titlebutton onclick==39。?method=edit39。Add User/buttontable class=listtheadtr/trthUser Id/ththFirst Name/ththLast Name/th/theadtbodyc:forEach var=user items=${users} varStatus=statusc:choosec:when test=${ % 2 == 0}tr class=even/c:whenc:otherwisetr class=odd/c:otherwise/c:choosetda href=?method=editamp。amp。id=${}${}/a/ tdtd${}/tdtd${}/td/tr/c:forEach/tbody/table你可以有一行“標題頭”(headings)(在thead中)。JSTL 的 c:forEach進行結(jié)果迭代,顯示所有的用戶。,你就會看到一些真實(actual)的用戶(users)。你可以選擇一種方法,手工添加,使用 ant browse,或是在 中添加如下的 target:target name=populateecho message=Loading sample data.../sql driver= url=jdbc:hsqldb:db/appfuseuserid=sa password=classpath refid=classpath/INSERT INTO app_user (id, first_name, last_name) values (5, 39。Julie39。,39。Raible39。)。INSERT INTO app_user (id, first_name, last_name) values (6, 39。Abbie39。,39。Raible39。)。/sql/target警告:為了使內(nèi)置的 HSQLDB 正常工作,從能運行 ant 的目錄下啟動 tomcat。在 Unix/Linux 鍵入 $CATALINA_HOME/bin/ ,在 win 上 %CATALINA_HOME%\bin\ 。通過瀏覽器驗證 JSP 的功能 JSP 文件和里面的樣例數(shù)據(jù),就可以通過瀏覽器來查看這個頁面。運行 ant deploy reload,轉(zhuǎn)到地址 ://localhost:8080/myusers/?method=list。出現(xiàn)以 下畫面:,缺少國際化的頁面標題頭,和列標題頭(column headings)。在web/WEBINF/classes 中 中加入一些鍵:=User Id =First Name =Last Name修改過的國際化的標題頭如下:theadtrthbean:message key= //ththbean:message key= //ththbean:message key= //th/tr/thead注意同樣可以使用 JSTL 的fmt:message key= ... 標簽。如果想為表添加排序和分布功能,可以使用 Display Tag ()。下面是使用這個標簽的一個樣例:display:table name=users pagesize=10 styleClass=listrequestURI=?method=listdisplay:column property=id paramId=id paramProperty=idhref=?method=edit sort=true/display:column property=firstName sort=true/display:column property=lastName sort=true//display:table請參考 display tag 文檔中有關的列標題頭國際化的部分。(list),創(chuàng)建 form 就可以添加/編輯(add/edit)數(shù)據(jù)。如果事先沒 有準備,可以在 web 目錄下新建一個 文件。向文件中添加以下代碼:%@ include file=/%titleMyUsers ~ User Details/titlepPlease fill in user39。s information below:/phtml:form action=/user focus=input type=hidden name=method value=save/html:hidden property=/tabletrthbean:message key=/: /thtdhtml:text property=//td/trtrthbean:message key=/: /thtdhtml:text property=//td/trtrtd/tdtd html:submit styleClass=buttonSave/html:submitc:if test=${not empty }html:submit styleClass=button onclick==39。delete39。 Delete/html:submit/c:if/td/table/html:form注意:如果你正在開發(fā)一個國際化的應用,把上面的信息和按鈕標簽替換成bean:message 或是 fmt:message 標簽。這是一個很好的練習。對于信息 message,建 議把 key 名稱寫成””(例如: )的形式,按鈕名字寫 成“”(例如 )。 ant deploy ,通過瀏覽器頁面的 user form 來進行 CRUD 操作。 最后大部分 web 應用都需要驗證。下一節(jié)中,配置 struts validator,要求用戶的last name 是必填的。用 mons Validator 添加驗證 為了在 Struts 中使用驗證,執(zhí)行以下幾步: 中添加 ValidatorPlugin。 ,指定 lastName 為必填字段。 save()方法設置驗證(validation)。 中添加 validation errors。在 中添加 ValidatorPlugin配置 Validatorp plugins,添加以下片斷到 (緊接著 Spring plugin):plugin className=setproperty property=pathnames value=/WEBINF/validator , /WEBINF///plugin從這里你可以看出,Validator 會查找 WEBINF 下的兩個文件 和 。第一個文件,,是一個標準文件,作為 Struts 的一 部分發(fā)布,它定義了所有可用的驗證器(validators),功能和客戶端的 javascript 類似。 第二個文件,包含針對每個 form 的驗證規(guī)則。創(chuàng)建 ,指定 lastName 為必填字段 文件中包含很多 DTD 定義的標準元素。但你只需要如下所示的form 和field,更多信息請參閱 Validator 的文檔。在 web/WEBINF/ 中的 form validation 標簽之間添加 formset 元素。formsetform name=userFormfield property= depends=required/form/formset把 DynaActionForm 改為 DynaValidatorForm把 中的 DynaActionForm 改為 DynaValidatorForm。formbean name=userFormtype=為 save()方法設置驗證(validation)使用 Struts DispatchAction 弊端是,驗證會在映射層(mapping level)激活。為了在list 和 edit 頁面關閉驗證。你必須單獨建一個”validate=false”的映射。例如, AppFuse 的 UserAction 有兩個映射:”/editUser” 和”/listUser”。然而有一個更簡單 的方法,可以減少 xml,只是多了一些 java 代碼。,添加 validate=false 。 UserAction 中的 save()方法,調(diào)用 ()方法,如果發(fā)現(xiàn)錯誤,返回編輯頁面。if (()) {(entering 39。save39。 method...)。}// run validation rules on this formActionMessages errors = (mapping, request)。if (!()) {saveErrors(request, errors)。return (edit)。}DynaActionForm userForm = (DynaActionForm) form。當 dispatchAction 運行時,與附帶一個屬性的兩個映射相比,這樣更加簡潔。但用兩個映射也有一些優(yōu)點:● 驗證失敗時,可以指定轉(zhuǎn)向”input”屬性?!? 在映射中可以添加“role”屬性,可以指定誰有訪問權(quán)限。例如,任何人都可以看到 編輯(edit)頁面,但只有管理員可以保存(save)。運行 ant deploy 重新載入(reload),嘗試添加一個新用戶,不要填寫 lastName。你會看到 一個驗證錯誤,表明 lastName 是必填字段,如下所示:Struts Validator 的另一種比較好的特性是客戶端驗證(clientside validation)。 form 標簽(web/)中添加”onsubmit”屬性,在 form 末尾添加html:javascript。html:form action=/user focus= onsubmit=return validateUserForm(this).../html:formhtml:javascript formName=userForm/現(xiàn)在如果運行 ant deploy,試圖保存一個 lastname 為空的用戶,會彈出一個 JavaScript 提示:“Last Name is required”。這里有一個問題,這個帶 JavaScript 的 form 把 validator 的 JavaScript 功能都載入了頁面。再好的方法是,從外部文件導入 Javascript。參見第 5 章。恭喜你!你已經(jīng)開發(fā)一個 web 應用,它包含數(shù)據(jù)庫交互,驗證實現(xiàn),成功信息和錯誤 信息的顯示。第 4 章,將會把這個轉(zhuǎn)向 Spring 框架。第 5 章中,會添加異常處理,文件上 傳,郵件發(fā)送等特性。第 6 章會看一下 JSP 的替代品,在第 7 章,會添加 DAO 的不同實現(xiàn), 包括 iBATIS, JDO 和 Spring 的 JDBC。
點擊復制文檔內(nèi)容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1