專利名稱:一種表單校驗方法、裝置及企業(yè)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計算機軟件領(lǐng)域,尤其涉及ー種表單校驗方法、裝置及企業(yè)系統(tǒng)。
背景技術(shù):
現(xiàn)今,表單的校驗一般是通過兩種方式來實現(xiàn),其ー為使用Struts2Validation框架來進行校驗,具體為用姆一個Action對應(yīng)一個以NewValidate Action-validation.xml方式命名的校驗規(guī)則文件,在前臺的表單中指定validate = “true”,且可同時生成客戶端的js校驗代碼。另ー種方式為用Javascript代碼定義校驗規(guī)則,然后通過JQuery的方法進行校驗。然而,這兩種方式卻存在以下缺陷I、通過JQuery的方法只能進行客戶端的校驗,不能進行服務(wù)端的 校驗;2、當(dāng)需要新增或刪除需校驗的表單表單字段時,校驗規(guī)則都需要由程序員一一修改代碼后才能使用,無法進行動態(tài)擴展;3、缺乏對校驗規(guī)則的重用,相同的表單字段在不同的地方出現(xiàn)需要重復(fù)定義校驗規(guī)則;4、所有的校驗規(guī)則都必須在系統(tǒng)發(fā)布前制定,無法在程序運行期由客戶管理人員指定。
發(fā)明內(nèi)容
本發(fā)明實施例的目的在于提供ー種表單校驗方法、裝置及企業(yè)系統(tǒng),g在解決表單校驗時,校驗規(guī)則無法動態(tài)擴展、不能重用且無法在程序運行期指定的問題。本發(fā)明實施例是這樣實現(xiàn)的,ー種表單校驗方法,所述方法包括以下步驟根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則;采用讀取的校驗規(guī)則對表單字段進行校驗。本發(fā)明實施例的另一目的在于提供ー種表單校驗裝置,所述裝置包括校驗規(guī)則讀取單元,用于根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則;校驗單元,用于采用讀取的校驗規(guī)則對表單字段進行校驗。本發(fā)明實施例的另ー目的在于提供ー種包括所述表單校驗裝置的企業(yè)系統(tǒng)。在本發(fā)明實施例中,將預(yù)定義的校驗規(guī)則存儲至數(shù)據(jù)庫中,并建立相關(guān)表單字段與校驗規(guī)則的引用關(guān)系,使得在校驗的時候能夠從數(shù)據(jù)庫中動態(tài)讀取校驗規(guī)則。當(dāng)需要新增或刪除表單字段時,能夠直接在數(shù)據(jù)庫中進行校驗規(guī)則的添加或刪除,便于校驗的動態(tài)擴展。相同的表單字段可直接讀取同ー個校驗規(guī)則,實現(xiàn)了校驗規(guī)則的重用。
圖I是本發(fā)明第一實施例提供的表單校驗方法流程圖2是本發(fā)明第二實施例提供的在客戶端的表單校驗方法流程圖;圖3是本發(fā)明第二實施例提供的在服務(wù)器端的表單校驗方法流程圖;圖4是本發(fā)明實施例提供的表單校驗裝置示意圖。
具體實施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進ー步詳細說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明實施例將預(yù)定義的校驗規(guī)則存儲至數(shù)據(jù)庫中,并建立相關(guān)表單字段與校驗規(guī)則的引用關(guān)系,使得在校驗的時候能夠從數(shù)據(jù)庫中動態(tài)讀取校驗規(guī)則。當(dāng)需要新增或刪除表單字段時,能夠直接在數(shù)據(jù)庫中進行校驗規(guī)則的添加或刪除,便于校驗的動態(tài)擴展。
本發(fā)明提供了 ー種表單校驗方法和裝置所述方法包括根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則;采用讀取的校驗規(guī)則對表單字段進行校驗。所述裝置包括校驗規(guī)則讀取單元,用于根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則;校驗單元,用于采用讀取的校驗規(guī)則對表單字段進行校驗。為了說明本發(fā)明所述的技術(shù)方案,下面通過具體實施例來進行說明。實施例一如圖I所示為本發(fā)明第一實施例提供的表單校驗方法的流程圖,為了便于說明,僅不出了與本發(fā)明實施例相關(guān)的部分。在步驟SlOl中,根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則。在本發(fā)明實施例中,數(shù)據(jù)庫中預(yù)設(shè)有校驗引用表,用于存儲各種表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,且將預(yù)定義的校驗規(guī)則以棧的形式存儲于數(shù)據(jù)庫中。然后根據(jù)表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,在校驗規(guī)則數(shù)據(jù)棧中讀取對應(yīng)的校驗規(guī)則。其中,校驗引用表中,一個表單字段可與ー個或多個校驗規(guī)則相關(guān)聯(lián),一個表單字段在校驗時,可引用一個或多個校驗規(guī)則。在本發(fā)明實施例中,若為客戶端的表單校驗,則獲取客戶端頁面的所有表單字段,然后讀取與所有客戶端頁面表單字段對應(yīng)的校驗規(guī)則;若為服務(wù)器端的表單校驗,則接收用戶發(fā)出的校驗請求,讀取該校驗請求包括的需要校驗表單字段對應(yīng)的校驗規(guī)則。由于校驗規(guī)則存儲在數(shù)據(jù)庫中,且校驗規(guī)則與表單字段的關(guān)聯(lián)關(guān)系也存儲在數(shù)據(jù)庫中,因此,可通過修改數(shù)據(jù)庫中的內(nèi)容來方便地修改校驗規(guī)則,利于校驗的擴展。在步驟S102中,采用讀取的校驗規(guī)則對表單字段進行校驗在本發(fā)明實施例中,將表單字段與讀取到的對應(yīng)的校驗規(guī)則進行比較來進行校驗,若表單字段與校驗規(guī)則相匹配,則校驗成功;若表單字段與校驗規(guī)則不相匹配,則提示出錯。在本發(fā)明實施例中,將預(yù)定義的校驗規(guī)則存儲至數(shù)據(jù)庫中,并建立相關(guān)表單字段與校驗規(guī)則的引用關(guān)系,使得在校驗的時候能夠從數(shù)據(jù)庫中動態(tài)讀取校驗規(guī)則。當(dāng)需要新增或刪除表單字段時,能夠直接在數(shù)據(jù)庫中進行校驗規(guī)則的添加或刪除,便于校驗的動態(tài)擴展。相同的表單字段可直接讀取同ー個校驗規(guī)則,實現(xiàn)了校驗規(guī)則的重用。實施例ニ 如圖2所示為本發(fā)明第二實施例提供的客戶端表單校驗方法的流程圖,為了便于說明,僅不出了與本發(fā)明實施例相關(guān)的部分。在步驟S201中,根據(jù)校驗引用表中所有客戶端頁面表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取所有客戶端頁面表單字段對應(yīng)的校驗規(guī)則。在本發(fā)明實施例中,根據(jù)客戶端頁面,可知客戶端頁面所有的表單字段,然后,根據(jù)校驗引用表中該頁面所有表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取該頁面所有表單字段對 應(yīng)的校驗規(guī)則。在步驟S202中,根據(jù)上述讀取的校驗規(guī)則生成腳本到客戶端。在本發(fā)明實施例中,根據(jù)從校驗規(guī)則數(shù)據(jù)棧中讀取出的對應(yīng)校驗規(guī)則生成javascript腳本到客戶端。在步驟S203中,客戶端接收用戶發(fā)出的校驗請求,所述校驗請求包括需校驗的表
單字段。在步驟S204中,用腳本與JQuery結(jié)合的方式,比較需校驗表單字段與對應(yīng)的校驗規(guī)則進行客戶端校驗。在本發(fā)明實施例中,javascript腳本與JQuery結(jié)合進行客戶端校驗。即由javascript腳本與JQuery結(jié)合來進行需校驗表單字段與校驗規(guī)則的比較,若需校驗表單字段與校驗規(guī)則相匹配,則校驗成功;若需校驗表單字段與校驗規(guī)則不匹配,則提示出錯。其中,校驗規(guī)則已經(jīng)存在于根據(jù)校驗規(guī)則生成的腳本中。解析腳本,便可獲得校驗規(guī)則。然后根據(jù)需校驗的表單字段選擇對應(yīng)的校驗規(guī)則。在本發(fā)明實施例中,JQuery是ー個工具類,提供了ー些公用的腳本校驗的方法,與JQuery結(jié)合來進行客戶端校驗提高了這個校驗框架的穩(wěn)定性及通用性。實施例三如圖3所示為本發(fā)明第三實施例提供的用攔截器的形式實現(xiàn)服務(wù)器表單校驗方法的流程圖,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分。在步驟S301中,服務(wù)器接收用戶發(fā)出的校驗請求,所述校驗請求包括需校驗的表
單字段。在步驟S302中,根據(jù)校驗引用表中需校驗表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取對應(yīng)的校驗規(guī)則。在步驟S303中,分解出校驗請求中需校驗的表單字段,然后與校驗規(guī)則進行比較。在本發(fā)明實施例中,在服務(wù)器端分解出校驗請求中需校驗的表單字段,然后直接將需校驗的表單字段與校驗規(guī)則相比較,看是否匹配,若需校驗表單字段與校驗規(guī)則相匹配,則校驗成功;若需校驗表單字段與校驗規(guī)則不匹配,則提示出錯。
在步驟S304中,循環(huán)校驗各個用戶發(fā)出的校驗請求,直到所有用戶發(fā)出的校驗請求全部校驗完畢。在本發(fā)明實施例中,校驗完ー個用戶發(fā)出的校驗請求后,返回繼續(xù)校驗下ー個用戶發(fā)出的校驗請求,直到將所有用戶發(fā)出的校驗請求校驗完畢才停止校驗。在本發(fā)明實施例中,用攔截器的方式進行服務(wù)器端的校驗,解決了用JQuery無法實現(xiàn)服務(wù)器端校驗的問題。實施例四圖4示出了本發(fā)明實施例提供的表單校驗裝置的結(jié)構(gòu),為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部份。該裝置可以是內(nèi)置于企業(yè)系統(tǒng)中的軟件單元、硬件単元或者軟硬件相結(jié)合的単元,或者作為獨立的掛件集成到企業(yè)系統(tǒng)或企業(yè)系統(tǒng)的應(yīng)用系統(tǒng)中。其中
校驗規(guī)則讀取單元41,用于根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則。在本發(fā)明實施例中,數(shù)據(jù)庫中預(yù)設(shè)有校驗引用表,用于存儲各種表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,且將預(yù)定義的校驗規(guī)則以棧的形式存儲于數(shù)據(jù)庫中。然后根據(jù)表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,在校驗規(guī)則數(shù)據(jù)棧中讀取對應(yīng)的校驗規(guī)則。其中,校驗引用表中,一個表單字段可與ー個或多個校驗規(guī)則相關(guān)聯(lián),一個表單字段在校驗時,可引用一個或多個校驗規(guī)則。在本發(fā)明實施例中,若為客戶端的表單校驗,則獲取客戶端頁面的所有表單字段,然后讀取與所有客戶端頁面表單字段對應(yīng)的校驗規(guī)則;若為服務(wù)器端的表單校驗,則接收用戶發(fā)出的校驗請求,讀取該校驗請求包括的需要校驗表單字段對應(yīng)的校驗規(guī)則。在本發(fā)明實施例中,校驗規(guī)則讀取單元包括兩個模塊,分別為客戶端校驗規(guī)則模塊411,用于根據(jù)校驗引用表中所有客戶端頁面表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取所有客戶端頁面表單字段對應(yīng)的校驗規(guī)則,并將所述所有客戶端頁面表單字段對應(yīng)的校驗規(guī)則生成腳本到客戶端。服務(wù)器校驗規(guī)則模塊412,用于在服務(wù)器接收到用戶發(fā)出的包括需校驗表單字段的校驗請求后,根據(jù)校驗引用表中需校驗表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取對應(yīng)的校驗規(guī)則。校驗單元42,用于采用讀取的校驗規(guī)則對表單字段進行校驗。在本發(fā)明實施例中,校驗單元42包括兩個模塊,分別為客戶端校驗?zāi)K421及服務(wù)器校驗單元422??蛻舳诵r?zāi)K421,用于在客戶端接收到用戶發(fā)出的包括需校驗表單字段的校驗請求后,用腳本與JQuery結(jié)合的方式,比較需校驗表單字段與對應(yīng)的校驗規(guī)則進行客戶端校驗。服務(wù)器校驗?zāi)K422,用于分解出校驗請求中需校驗的表單字段,然后與對應(yīng)的校驗規(guī)則進行比較。在本發(fā)明實施例中,將預(yù)定義的校驗規(guī)則存儲至數(shù)據(jù)庫中,并建立相關(guān)表單字段與校驗規(guī)則的引用關(guān)系,使得在校驗的時候能夠從數(shù)據(jù)庫中動態(tài)讀取校驗規(guī)則。當(dāng)需要新增或刪除表單字段時,能夠直接在數(shù)據(jù)庫中進行校驗規(guī)則的添加或刪除,便于校驗的動態(tài)擴展。相同的表單字段可直接讀取同ー個校驗規(guī)則,實現(xiàn)了校驗規(guī)則的重用。本領(lǐng)域普通技術(shù)人員可以理解,實現(xiàn)上述實施例方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以在存儲于ー計算機可讀取存儲介質(zhì)中,所述的存儲介質(zhì),如R0M/RAM、磁盤、光盤等。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.ー種表單校驗方法,其特征在于,所述方法包括下述步驟根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則;采用讀取的校驗規(guī)則對表單字段進行校驗。
2.如權(quán)利要求I所述的方法,其特征在于,所述采用讀取的校驗規(guī)則對表單字段進行校驗的步驟具體為比較所述表單字段與對應(yīng)的校驗規(guī)則;若所述表單字段與校驗規(guī)則相匹配,則校驗成功;若所述表單字段與校驗規(guī)則不相匹配,則提示出錯。
3.如權(quán)利要求I所述的方法,其特征在干,當(dāng)在客戶端進行校驗時,所述根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則的步驟為根據(jù)校驗引用表中所有客戶端頁面表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取所有客戶端頁面表單字段對應(yīng)的校驗規(guī)則,并將所述所有客戶端頁面表單字段對應(yīng)的校驗規(guī)則生成腳本到客戶端;所述采用讀取的校驗規(guī)則對表單字段進行校驗的步驟為客戶端接收到用戶發(fā)出的包括需校驗表單字段的校驗請求后,用腳本與JQuery結(jié)合的方式,比較需校驗表單字段與對應(yīng)的校驗規(guī)則進行客戶端校驗。
4.如權(quán)利要求I所述的方法,其特征在干,當(dāng)在服務(wù)器進行校驗時,所述根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則的步驟為服務(wù)器接收到用戶發(fā)出的包括需校驗表單字段的校驗請求后,根據(jù)校驗引用表中需校驗表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取對應(yīng)的校驗規(guī)則;所述采用讀取的校驗規(guī)則對表單字段進行校驗的步驟為分解出校驗請求中需校驗的表單字段,然后與所述對應(yīng)的校驗規(guī)則進行比較。
5.如權(quán)利要求1-4任ー權(quán)利要求所述的方法,其特征在于,所述校驗引用表包括需校驗表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,且ー個需校驗表單字段可與ー個或多個校驗規(guī)則相關(guān)聯(lián);所述校驗規(guī)則存儲于數(shù)據(jù)庫中。
6.ー種表單校驗裝置,其特征在于,所述裝置包括校驗規(guī)則讀取單元,用于根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則;校驗單元,用于采用讀取的校驗規(guī)則對表單字段進行校驗。
7.如權(quán)利要求6所述的裝置,其特征在于,所述校驗規(guī)則讀取単元包括客戶端校驗規(guī)則模塊,用于根據(jù)校驗引用表中所有客戶端頁面表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取所有客戶端頁面表單字段對應(yīng)的校驗規(guī)則,并將所述所有客戶端頁面表單字段對應(yīng)的校驗規(guī)則生成腳本到客戶端;服務(wù)器校驗規(guī)則模塊,用于在服務(wù)器接收到用戶發(fā)出的包括需校驗表單字段的校驗請求后,根據(jù)校驗引用表中需校驗表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取對應(yīng)的校驗規(guī)則。
8.如權(quán)利要求6所述的裝置,其特征在于,所述校驗単元包括客戶端校驗?zāi)K,用于在客戶端接收到用戶發(fā)出的包括需校驗表單字段的校驗請求后,用腳本與JQuery結(jié)合的方式,比較需校驗表單字段與對應(yīng)的校驗規(guī)則進行客戶端校驗;服務(wù)器校驗?zāi)K,用于分解出校驗請求中需校驗的表單字段,然后與對應(yīng)的校驗規(guī)則進行比較。
9.如權(quán)利要求6至8所述的裝置,其特征在于,所述校驗引用表包括需校驗表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,且ー個需校驗表單字段可與一個或多個校驗規(guī)則相關(guān)聯(lián);所述校驗規(guī)則存儲于數(shù)據(jù)庫中。
10.ー種企業(yè)系統(tǒng),其特征在于,所述企業(yè)系統(tǒng)包括權(quán)利要求6-9任ー權(quán)利要求所述的表單校驗裝置。
全文摘要
本發(fā)明適用于計算機軟件領(lǐng)域,提供了一種表單校驗方法、裝置及企業(yè)系統(tǒng),所述方法包括根據(jù)校驗引用表中表單字段與校驗規(guī)則的關(guān)聯(lián)關(guān)系,讀取與表單字段對應(yīng)的校驗規(guī)則;采用讀取的校驗規(guī)則對表單字段進行校驗。本發(fā)明將預(yù)定義的校驗規(guī)則存儲至數(shù)據(jù)庫中,并建立相關(guān)表單字段與校驗規(guī)則的引用關(guān)系,使得在校驗的時候能夠從數(shù)據(jù)庫中動態(tài)讀取校驗規(guī)則。當(dāng)需要新增或刪除表單字段時,能夠直接在數(shù)據(jù)庫中進行校驗規(guī)則的添加或刪除,便于校驗的動態(tài)擴展。相同的表單字段可直接讀取同一個校驗規(guī)則,實現(xiàn)了校驗規(guī)則的重用。
文檔編號G06Q10/00GK102819766SQ20111015368
公開日2012年12月12日 申請日期2011年6月9日 優(yōu)先權(quán)日2011年6月9日
發(fā)明者歐海濤, 劉楠, 譚奇軍 申請人:金蝶軟件(中國)有限公司