[發明專利]一種基于自定義特性驗證數據有效性的方法及系統在審
| 申請號: | 201710446899.3 | 申請日: | 2017-06-14 |
| 公開(公告)號: | CN107368530A | 公開(公告)日: | 2017-11-21 |
| 發明(設計)人: | 陳強;彭俊社 | 申請(專利權)人: | 廣東網金控股股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 廣州君咨知識產權代理有限公司44437 | 代理人: | 王璽建 |
| 地址: | 510000 廣東省廣州市天*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 自定義 特性 驗證 數據 有效性 方法 系統 | ||
技術領域
本發明涉及人體行為軟件開發領域,具體涉及一種基于自定義特性驗證數據有效性的方法及系統。
背景技術
在軟件開發中,為了保持數據的完整性,需要進行客戶端和服務端的雙重校驗,這里介紹利用自定義特性完成服務器端數據校驗,判斷其是否有效。
現有的驗證數據有效性的方法是每來一個數據都需要提供單獨的邏輯去驗證。包括驗證判斷其是否為空、長度是否超長、值是否符合特定要求等。現有的驗證數據有效性的方法中,有多少個字段,就要提供多少次這樣的代碼;這會導致編寫大量相同或相似的代碼,效率低、穩定性差、冗余、可維護性差。因此,提供一種簡單有效、開發效率高、穩定性高的驗證數據有效性方法就很有必要。
發明內容
本發明所要解決的技術問題是現有技術中存在的驗證復雜、效率低的技術問題。提供一種新的基于自定義特性驗證數據有效性的方法,該基于自定義特性驗證數據有效性的方法具有可維護性強、方法間接、效率高、穩定性高的特點。
為解決上述技術問題,采用的技術方案如下:
一種基于自定義特性驗證數據有效性的方法,所述方法包括客戶端校驗及服務端校驗,所述服務端校驗包括基于自定義特性校驗,所述自定義特性校驗包括:
(1)將驗證邏輯封裝為自定義特性;
(2)定義實體,將實體的字段與輸入數據的字段保持一致,為實體的字段中待驗證字段設置自定義特性值;
(3)將輸入數據轉換為步驟(2)中定義的實體,利用反射獲取實體的字段;遍歷實體的字段,利用反射獲取實體字段的字段值,利用反射獲取待驗證字段對應的自定義特性值;
(4)將步驟(3)反射取得的字段值轉換為字段類型,將字段類型與自定義特性值進行對比匹配驗證,匹配成功,則數據合法,數據入庫;匹配失敗,則數據不合法,返回數據有效性驗證失敗信號。
本發明的工作原理:本發明通過自定義特性,自定義特性包括字段的名稱、類型、是否必填、長度、可選值等信息。利用反射獲取到實體所有的字段值、及字段對應自定義特性值;通過字段值與自定義特性值進行比對,具體為通過自定義特性值可以知道字段是否必填,字段值是否為空,字段長度是否超長、字段值類型是否符合要求等,最終驗證數據有效性。而不管實體有多少個字段,都不再需要人工編寫大量的代碼去驗證數據。將驗證的邏輯封裝到特性內,哪個字段需要驗證就添加這個特性。數據校驗時,只需通過反射獲取特性值做校驗工作。
上述方案中,為優化,進一步地,所述服務端校驗還包括入庫結果檢測,入庫成功則返回數據有效性驗證成功信號,入庫失敗則返回數據有效性驗證失敗信號。
進一步地,所述輸入數據包括從服務端頁面錄入的數據。
進一步地,所述輸入數據包括從第三方接口傳遞的數據。
進一步地,所述自定義特性包括名稱、類型、是否必填、長度及枚舉值。
進一步地,所述字段類型包括字符串及數字。
本發明還提供一種基于自定義特性驗證數據有效性的方法的系統,所述系統包括:
用于采集輸入數據的數據輸入單元;
用于存儲自定義特性的自定義特性存儲單元,所述自定義特性由驗證邏輯封裝而得;
用于執行定義實體、反射及匹配驗證的中央處理器單元;
用于發送數據有效性驗證結果的數據傳輸單元;
用于記錄數據驗證歷史的記錄存儲單元。
進一步地,所述數據驗證歷史記錄包括數據驗證驗證時間、驗證次數、驗證結果。
本發明中,實體是指用于映射數據表或視圖中一條記錄的類的實例;在一個類中只定義其屬性值,而不做其他的實現。反射是指一種計算機處理方式。是程序可以訪問、檢測和修改它本身狀態或行為的一種能力。
本發明的有益效果:
效果一,通過將驗證的邏輯封裝到特性內,哪個字段需要驗證就添加這個特性,能夠優化驗證數據有效性方法的冗余度,能夠簡便數據驗證方法;
效果二,提高了驗證效率,驗證穩定性;
效果三,可維護性強,方法組成簡潔。
附圖說明
下面結合附圖和實施例對本發明進一步說明。
圖1,實施例1中通過自定義特性驗證數據有效性方法的流程示意圖。
具體實施方式
為了使本發明的目的、技術方案及優點更加清楚明白,以下結合實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅用以解釋本發明,并不用于限定本發明。
實施例1
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣東網金控股股份有限公司,未經廣東網金控股股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710446899.3/2.html,轉載請聲明來源鉆瓜專利網。





