Web開發框架中的架構模式比較(四) (轉)
提供驗證功能的: CompareValidator驗證兩個控制元件輸入之間的比較,RangeValidator檢查的輸入是否在指定的上限和下限之間;RegularExpressionValidator 控制元件檢查輸入是否與某個正則所定義的相匹配(社會保障號、電子地址、電話號碼、郵政編碼等);RequiredFieldValidator 控制元件確保使用者不會略過某個輸入;CustomValidator 控制元件建立自定義伺服器和客戶端驗證程式碼。稍後會舉例說明。:namespace prefix = o ns = "urn:schemas--com::office" />
通常會把驗證規則提出來,放在一個驗證規則裡。 提供驗證兩種方式。一種是過載org.apache.struts.action.ActionForm類的validate方法,一種是定義Validator Plug-In檔案,validator-rules.xml。Apache Cocoon也提供了類似的驗證規則檔案。稍後舉例說明。
的例子
摘自.Net框架文件,其餘部分省略,只保留了關於RegularExpressionValidator的部分。本例中,id為RegularExpressionValidator1的控制元件的ControlToValidate屬性為TextBox1,所以,RegularExpressionValidator1負責驗證TextBox1是否符合正規表示式"d{5}"——5個數字。
runat="server"/>
id="RegularExpressionValidator1" ControlToValidate="TextBox1" ValidationExpression="d{5}" Display="Static" EnableClientScript="false" ErrorMessage="Zcode must be 5 numeric digits" runat="server"/>
的例子
下面的例子從Apache Struts的使用者文件中摘錄出來。Apache Struts提供的Validation機制非常強大,能夠實現基於其它輸入域的條件驗證,即,如果另外一個或幾個輸入域都符合相應的情況,那麼,驗證當前域是否符合某種條件。
property="firstName" indexedListProperty="dependents" depends="requiredif">
property="dob" indexedListProperty="dependents" depends="requiredif,date">
property="coverageType" indexedListProperty="dependents" depends="requiredif">
的例子
下面的例子是Apache Cocoon的教學中的檔案。對id和name兩個域進行驗證。同時,這個檔案定義了頁面元素和資料之間的繫結。下一節就要闡述這個問題。
<>
正如上一節最後一個例子(Apache Cocoon)所示,很多web開發框架提供頁面元素和資料庫欄位的直接繫結。
.NET 框架包含三個便於顯示大量資料的控制元件:Repeater 控制元件、DataList 控制元件和 DataGrid 控制元件。這三個控制元件都使用相似的資料繫結過程,繫結到DataSet、DataReader或DataView。下面的程式碼示例從.Net框架文件摘錄,顯示如何將 SQL 資料庫查詢返回的 DataSet 繫結到 DataGrid 控制元件。
Simple SELECT to a DataGrid Control
Width="700" BackColor="#ccccff" BorderColor="black" ShowFooter="false" CellPadding=3 CellSpacing="0" Font-Name="Verdana" Font-Size="8pt" HeaderStyle-BackColor="#aaaadd" EnableViewState="false" /> 多語言支援策略基本上都採取一種類似於查多本字典的模式。先舉一個類比例子來說明,比如,我們有英英字典,英漢字典,英德字典,英法字典,對於一個英文單詞,每本字典都有對應語言的單詞,滿足不同語言的使用者的需要。我們把要查的英文單詞稱為key,所有的字典稱為資原始檔resource file,查出來的對應語言的單詞,就是應該顯示給使用者的內容。、 上述模式簡單而常見,不再列出例子程式碼,下面只進行簡單的說明。 .Net框架透過一個重要的資源管理類System.Resources.SDK.CHS/cpref/html/frlrfsystemresourcesresourcemanagerclasstopic.htm">ResourceManager,來管理在應用程式中使用的不同特定於區域性的資源。方可使用 和 兩種方法訪問特定區域性的資源。這兩個方法的引數都包括一個key,和一個本地語言資訊。.Net的資原始檔字尾是DLL。 Apache Struts專案的類org.apache.struts.util.MessageResources的getMessage方法提供了類似的功能。Apache Struts專案提供了一個擴充套件的HTML Tag —— Message,也起著多語言支援、本地化的作用。Struts的資原始檔字尾是properties,格式按照java properties檔案的格式。 Apache Cocoon專案提供了一類稱為i18n的Tranormer,用來實現多語言支援。常用的標記如
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-993466/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Web 框架的架構模式探討Web框架架構模式
- Web3架構與傳統Web的比較 - thenewstackWeb架構
- Play! Framework 系列(四):DI 模式比較Framework模式
- Transformer和MoE架構比較ORM架構
- python網站開發哪些框架比較好用?Python網站框架
- iOS開發-MVP架構模式iOSMVP架構模式
- web前端的開發規範比較重要的知識點Web前端
- 乾淨架構在 Web 服務開發中的實踐架構Web
- EDP .Net開發框架--組織架構框架架構
- PPT 分享:《10 個 Go Web 開發框架對比》GoWeb框架
- python中web開發框架Django的學習PythonWeb框架Django
- python轉go的web開發者的新船票——Tigo框架PythonGoWeb框架
- 常用的Java開發工具比較Java
- 成都哪家Web前端培訓機構比較好?Web前端
- 比較微服務中的分散式事務模式微服務分散式模式
- 基於Python+Django+Jquery架構的Web開發PythonDjangojQuery架構Web
- Java Python 和Nodejs在web開發方面的簡單比較JavaPythonNodeJSWeb
- go Web 框架 一般得學哪款比較好呢?GoWeb框架
- MVVM與MVC模式的比較MVVMMVC模式
- web開發安全框架中的Apache Shiro的應用Web框架Apache
- 極簡架構模式-控制反轉架構模式
- 架構設計:單例模式、多例模式相比較有何不同?架構單例模式
- Langchain 與 LlamaIndex:LLM 應用開發框架的比較與選用建議LangChainIndex框架
- java架構師筆記:Java中的轉換器設計模式Java架構筆記設計模式
- 系統開發中的B/S架構架構
- TIM1比較模式模式
- Hybris service layer和SAP CRM WebClient UI架構的橫向比較WebclientUI架構
- 四種在Javascript比較物件的方法JavaScript物件
- 智汀雲盤-開發指南web:專案架構Web架構
- 微服務架構Day04-SpringBoot之web開發微服務架構Spring BootWeb
- Laravel 和 Spring Boot 兩個框架比較創業篇(一:開發效率)LaravelSpring Boot框架創業
- 開發者架構選型:原生應用 or 混合框架?架構框架
- Web開發框架推導Web框架
- 併發程式設計:DEMO:比較Stream和forkjoin框架的效率程式設計框架
- 軟體架構, 軟體框架,設計模式的區別架構框架設計模式
- Python、JavaScript和Rust的Web效能比較 - AlexPythonJavaScriptRustWeb
- 在微服務架構中實施分散式事務鎖的幾個方案比較 - Prasanth Gullapalli微服務架構分散式
- 微服務架構Day03-SpringBoot之web開發配置微服務架構Spring BootWeb
- 10 個 Go Web 開發框架對比-國內地址可以直接看GoWeb框架