本發(fā)明涉及數(shù)據(jù)庫(kù)應(yīng)用領(lǐng)域,特別是涉及一種用戶表單生成方法和裝置。
背景技術(shù):
在軟件應(yīng)用系統(tǒng)中一般會(huì)把用戶的業(yè)務(wù)數(shù)據(jù)或者關(guān)鍵信息存儲(chǔ)在數(shù)據(jù)庫(kù)中。為了達(dá)到這樣的功能,在軟件開發(fā)過程中,軟件工程師通常會(huì)先根據(jù)用戶的業(yè)務(wù)需求在數(shù)據(jù)庫(kù)中建立一張或多張數(shù)據(jù)表,然后設(shè)計(jì)一個(gè)或多個(gè)用戶與數(shù)據(jù)表交互的軟件界面提供用戶錄入或修改業(yè)務(wù)數(shù)據(jù),其中,該軟件界面稱為用戶表單。
但是通常一個(gè)系統(tǒng)中存在很多數(shù)據(jù)表,軟件工程師需要設(shè)計(jì)很多個(gè)用戶表單和編寫表單處理程序來完成用戶與數(shù)據(jù)庫(kù)的交互,且每個(gè)用戶表單的設(shè)計(jì)都要包括數(shù)據(jù)項(xiàng)的輸入設(shè)計(jì)和數(shù)據(jù)項(xiàng)的有效性校驗(yàn),工作量很大,如果涉及到業(yè)務(wù)需求的變化,例如新增、修改、刪除業(yè)務(wù)數(shù)據(jù)項(xiàng)等,則需要重新修改用戶表單和對(duì)應(yīng)的表單處理程序,即重新設(shè)計(jì)新的用戶表單的數(shù)據(jù)項(xiàng)的數(shù)據(jù)輸入方式和數(shù)據(jù)項(xiàng)的有效性校驗(yàn)等,開發(fā)工作量比較大。
技術(shù)實(shí)現(xiàn)要素:
基于此,有必要針對(duì)用戶表單的開發(fā)工作量大的問題,提供一種用戶表單生成方法和裝置。
一種用戶表單生成方法,所述方法包括:
獲取待生成的用戶表單所涉及的數(shù)據(jù)表名稱和各個(gè)字段;
根據(jù)所述數(shù)據(jù)表名稱讀取相應(yīng)數(shù)據(jù)表配置文件;
從所述數(shù)據(jù)表配置文件獲取所述各個(gè)字段的數(shù)據(jù)輸入方式;
根據(jù)所述各個(gè)字段的所述數(shù)據(jù)輸入方式,生成所述用戶表單。
在其中一個(gè)實(shí)施例中,所述方法還包括:
提供數(shù)據(jù)表生成界面;
通過所述數(shù)據(jù)表生成界面接收待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)輸入方式;
將所述待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)輸入方式存儲(chǔ)至所述數(shù)據(jù)表配置文件中;
根據(jù)所述數(shù)據(jù)表配置文件生成所述待生成的數(shù)據(jù)表。
在其中一個(gè)實(shí)施例中,所述接收并存儲(chǔ)待生成的用戶表單所涉及的數(shù)據(jù)表名稱和各個(gè)字段的步驟,包括:
提供用戶表單生成界面;
通過用戶表單生成界面接收所涉及的數(shù)據(jù)表名稱;
根據(jù)所述數(shù)據(jù)表名稱顯示相應(yīng)數(shù)據(jù)表中各個(gè)字段;
通過所述用戶表單生成界面接收所選擇的所述數(shù)據(jù)表中的字段;
存儲(chǔ)所選擇的所述數(shù)據(jù)表中的字段作為用戶表單所涉及的字段,以及存儲(chǔ)所接收的數(shù)據(jù)表名稱作為所述用戶表單所涉及的數(shù)據(jù)表名稱。
在其中一個(gè)實(shí)施例中,所述方法還包括:
通過所述數(shù)據(jù)表生成界面接收所述待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)校驗(yàn)方式;
將所述待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)校驗(yàn)方式存儲(chǔ)至所述數(shù)據(jù)表配置文件中;
所述生成所述用戶表單的步驟之后,還包括:
通過所生成的所述用戶表單接收輸入數(shù)據(jù);
根據(jù)所述數(shù)據(jù)表名稱讀取相應(yīng)的數(shù)據(jù)表配置文件;
從所述數(shù)據(jù)表配置文件獲取所述用戶表單中各個(gè)字段的數(shù)據(jù)校驗(yàn)方式;
根據(jù)所述數(shù)據(jù)校驗(yàn)方式對(duì)所述輸入數(shù)據(jù)進(jìn)行校驗(yàn);
當(dāng)所述輸入數(shù)據(jù)校驗(yàn)成功時(shí),則存儲(chǔ)所述輸入數(shù)據(jù);
當(dāng)所述輸入數(shù)據(jù)校驗(yàn)失敗時(shí),則提示所述輸入數(shù)據(jù)校驗(yàn)失敗。
在其中一個(gè)實(shí)施例中,所述根據(jù)所述數(shù)據(jù)校驗(yàn)方式對(duì)所述輸入數(shù)據(jù)進(jìn)行校驗(yàn)的步驟,包括:
根據(jù)所述數(shù)據(jù)校驗(yàn)方式,對(duì)所述輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途進(jìn)行校驗(yàn);
當(dāng)所述輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途均校驗(yàn)成功,則返回所述輸入數(shù)據(jù)校驗(yàn)成功的結(jié)果;
當(dāng)所述輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途至少有一個(gè)校驗(yàn)不成功,則返回所述輸入數(shù)據(jù)校驗(yàn)失敗的結(jié)果。
一種用戶表單生成裝置,所述裝置包括:
第一接收模塊,用于獲取待生成的用戶表單所涉及的數(shù)據(jù)表名稱和各個(gè)字段;
第一讀取模塊,用于根據(jù)所述數(shù)據(jù)表名稱讀取相應(yīng)數(shù)據(jù)表配置文件;
第一獲取模塊,用于從所述數(shù)據(jù)表配置文件獲取所述各個(gè)字段的數(shù)據(jù)輸入方式;
用戶表單生成模塊,用于根據(jù)所述各個(gè)字段的所述數(shù)據(jù)輸入方式,生成所述用戶表單。
在其中一個(gè)實(shí)施例中,所述第一接收模塊還用于提供數(shù)據(jù)表生成界面,并通過數(shù)據(jù)表生成界面接收待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)輸入方式;
存儲(chǔ)模塊,用于將所述待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)輸入方式存儲(chǔ)至所述數(shù)據(jù)表配置文件中;
數(shù)據(jù)表生成模塊,用于根據(jù)所述數(shù)據(jù)表配置文件生成所述待生成的數(shù)據(jù)表。
在其中一個(gè)實(shí)施例中,所述第一接收模塊包括:
第一接收單元,用于提供用戶表單生成界面,并通過用戶表單生成界面接收所涉及的數(shù)據(jù)表名稱,以及通過所述用戶表單生成界面接收所選擇的所述數(shù)據(jù)表中的字段;
顯示單元,用于根據(jù)所述數(shù)據(jù)表名稱顯示相應(yīng)數(shù)據(jù)表中各個(gè)字段;
存儲(chǔ)單元,用于存儲(chǔ)所選擇的所述數(shù)據(jù)表中的字段作為用戶表單所涉及的字段,以及存儲(chǔ)所接收的數(shù)據(jù)表名稱作為所述用戶表單所涉及的數(shù)據(jù)表名稱。
在其中一個(gè)實(shí)施例中,所述第一接收模塊還用于通過所述數(shù)據(jù)表生成界面接收所述待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)校驗(yàn)方式;
所述存儲(chǔ)模塊還用于將所述待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)校驗(yàn)方式存儲(chǔ)至所述數(shù)據(jù)表配置文件中;
所述裝置還包括:
第二接收模塊,用于通過所生成的所述用戶表單接收輸入數(shù)據(jù);
第二讀取模塊,用于根據(jù)所述數(shù)據(jù)表名稱讀取相應(yīng)的數(shù)據(jù)表配置文件;
第二獲取模塊,用于從所述數(shù)據(jù)表配置文件獲取所述用戶表單中各個(gè)字段的數(shù)據(jù)校驗(yàn)方式;
校驗(yàn)?zāi)K,用于根據(jù)所述數(shù)據(jù)校驗(yàn)方式對(duì)所述輸入數(shù)據(jù)進(jìn)行校驗(yàn),且在所述輸入數(shù)據(jù)校驗(yàn)成功時(shí),則存儲(chǔ)所述輸入數(shù)據(jù);在所述輸入數(shù)據(jù)校驗(yàn)失敗時(shí),則提示所述輸入數(shù)據(jù)校驗(yàn)失敗。
在其中一個(gè)實(shí)施例中,所述校驗(yàn)?zāi)K包括:
檢驗(yàn)單元,用于根據(jù)所述數(shù)據(jù)校驗(yàn)方式,對(duì)所述輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途進(jìn)行校驗(yàn);
結(jié)果返回單元,用于在所述輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途均校驗(yàn)成功,則返回所述輸入數(shù)據(jù)校驗(yàn)成功的結(jié)果;在所述輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途至少有一個(gè)校驗(yàn)不成功,則返回所述輸入數(shù)據(jù)校驗(yàn)失敗的結(jié)果。
上述用戶表單生成方法和裝置,將用戶表單所涉及的各個(gè)字段的數(shù)據(jù)輸入方式預(yù)先進(jìn)行存儲(chǔ),這樣當(dāng)用戶需要設(shè)置新的用戶表單時(shí),則不再需要重新配置各個(gè)字段的數(shù)據(jù)輸入方式,僅需要查詢相應(yīng)的數(shù)據(jù)表的配置文件即可獲得所涉及的字段的數(shù)據(jù)輸入方式,并生成新的用戶表單,大大減少了開發(fā)的工作量。
附圖說明
圖1為一實(shí)施例中用戶表單生成系統(tǒng)的示意圖;
圖2為一實(shí)施例中用戶表單生成方法的流程圖;
圖3為一實(shí)施例中數(shù)據(jù)表生成步驟的流程圖;
圖4為圖3所示實(shí)施例中數(shù)據(jù)表生成界面的界面圖;
圖5為圖2所示實(shí)施例中的步驟s202的流程圖;
圖6為圖5所示的用戶表單生成界面的界面圖;
圖7為一實(shí)施例中輸入數(shù)據(jù)處理步驟的流程圖;
圖8為圖7所示實(shí)施例中步驟s708的流程圖;
圖9為一實(shí)施例中用戶表單生成裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用于解釋本發(fā)明,并不用于限定本發(fā)明。
在詳細(xì)說明根據(jù)本發(fā)明的實(shí)施例前,應(yīng)該注意到的是,所述的實(shí)施例主要在于與用戶表單生成方法和裝置相關(guān)的步驟和系統(tǒng)組件的組合。因此,所屬系統(tǒng)組件和方法步驟已經(jīng)在附圖中通過常規(guī)符號(hào)在適當(dāng)?shù)奈恢帽硎境鰜砹?,并且只示出了與理解本發(fā)明的實(shí)施例有關(guān)的細(xì)節(jié),以免因?qū)τ诘靡嬗诒景l(fā)明的本領(lǐng)域普通技術(shù)人員而言顯而易見的那些細(xì)節(jié)模糊了本發(fā)明的公開內(nèi)容。
在本文中,諸如左和右,上和下,前和后,第一和第二之類的關(guān)系術(shù)語僅僅用來區(qū)分一個(gè)實(shí)體或動(dòng)作與另一個(gè)實(shí)體或動(dòng)作,而不一定要求或暗示這種實(shí)體或動(dòng)作之間的任何實(shí)際的這種關(guān)系或順序。術(shù)語“包括”、“包含”或任何其他變體旨在涵蓋非排他性的包含,由此使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包含這些要素,而且還包含沒有明確列出的其他要素,或者為這種過程、方法、物品或者設(shè)備所固有的要素。
請(qǐng)參閱圖1,圖1為一實(shí)施例中用戶表單生成系統(tǒng)的示意圖,其中包括處理器、操作系統(tǒng)、數(shù)據(jù)庫(kù)和用于用戶表單生成的裝置,其中數(shù)據(jù)庫(kù)是管理相關(guān)數(shù)據(jù)的集合,上述的數(shù)據(jù)庫(kù)中可以存儲(chǔ)已生成的數(shù)據(jù)表和用戶表單等,例如當(dāng)用戶錄入或修改完數(shù)據(jù)后提交用戶表單,則處理器會(huì)收集用戶表單上的每個(gè)數(shù)據(jù)項(xiàng),然后連接數(shù)據(jù)庫(kù),把收集到的數(shù)據(jù)插入或者修改到存儲(chǔ)在數(shù)據(jù)庫(kù)的數(shù)據(jù)表中。
請(qǐng)參閱圖2,圖2為一實(shí)施例中用戶表單生成方法的流程圖,本實(shí)施例以該方法應(yīng)用到上述圖1中的用戶表單生成系統(tǒng)中來舉例說明。該用戶表單生成系統(tǒng)上運(yùn)行有用戶表單生成程序,通過該用戶表單生成程序來實(shí)現(xiàn)用戶表單生成方法。該用戶表單生成方法包括:
s202:獲取待生成的用戶表單所涉及的數(shù)據(jù)表名稱和各個(gè)字段。
數(shù)據(jù)表是數(shù)據(jù)庫(kù)的組成單元,用于將數(shù)據(jù)分類存儲(chǔ),例如用戶的基本信息分類存入一個(gè)文件,用戶的交易信息分類存入另一個(gè)文件,產(chǎn)品信息分類存入一個(gè)文件,這些文件就是數(shù)據(jù)表。
用戶表單是指用于輸入數(shù)據(jù)表數(shù)據(jù)的軟件界面,例如在費(fèi)用報(bào)銷系統(tǒng)中,可以通過費(fèi)用報(bào)銷界面來錄入具體的報(bào)銷信息,這個(gè)費(fèi)用報(bào)銷界面即可以看成是用戶表單。
字段是數(shù)據(jù)表的組成單元,例如用戶的基本信息數(shù)據(jù)可以包括用戶名稱、用戶登錄賬號(hào)id、登錄密碼、用戶性別或者用戶年齡等,其中“用戶名稱、用戶登錄賬號(hào)id、登錄密碼、用戶性別或者用戶年齡”就是用戶基本信息數(shù)據(jù)表的字段,也可稱為用戶基本信息數(shù)據(jù)表的數(shù)據(jù)列。
s204:根據(jù)數(shù)據(jù)表名稱讀取相應(yīng)數(shù)據(jù)表配置文件。
具體地,數(shù)據(jù)表的信息存儲(chǔ)在數(shù)據(jù)表配置文件中,處理器可以建立數(shù)據(jù)表名稱和數(shù)據(jù)表配置文件的匹配關(guān)系,例如處理器可以將數(shù)據(jù)表配置文件命名為數(shù)據(jù)表名稱,或者處理器還可以通過建立存儲(chǔ)有數(shù)據(jù)表名稱和數(shù)據(jù)表配置文件的匹配關(guān)系的表格等方式建立數(shù)據(jù)表名稱和數(shù)據(jù)表配置文件的匹配關(guān)系。當(dāng)處理器通過將數(shù)據(jù)表配置文件命名為數(shù)據(jù)表名稱的方式來建立數(shù)據(jù)表名稱和數(shù)據(jù)表配置文件的匹配關(guān)系時(shí),用戶每創(chuàng)建一個(gè)新的數(shù)據(jù)表則生成一個(gè)以數(shù)據(jù)表名稱命名的配置文件,從而通過數(shù)據(jù)表名稱則可以唯一地確定相應(yīng)的數(shù)據(jù)表配置文件。
s206:從數(shù)據(jù)表配置文件獲取各個(gè)字段的數(shù)據(jù)輸入方式。
具體地,當(dāng)處理器接收到用戶表單所涉及的各個(gè)字段時(shí),不再需要軟件開發(fā)人員編寫針對(duì)每個(gè)字段的數(shù)據(jù)輸入方式的設(shè)計(jì)程序,僅需要簡(jiǎn)單地調(diào)用已存儲(chǔ)在數(shù)據(jù)表中的各個(gè)字段的數(shù)據(jù)輸入方式即可,大大減少了工作量,且不需要專業(yè)的軟件開發(fā)人員或程序員進(jìn)行操作,通過簡(jiǎn)單的操作便可以完成對(duì)用戶表單的配置。
s208:根據(jù)各個(gè)字段的數(shù)據(jù)輸入方式,生成用戶表單。
當(dāng)獲取到所要生成的用戶表單的各個(gè)字段的數(shù)據(jù)輸入方式時(shí),則僅需要根據(jù)該各個(gè)字段的數(shù)據(jù)輸入方式生成該用戶表單即可,大大減少了工作量。
上述用戶表單生成方法,將用戶表單所涉及的各個(gè)字段的數(shù)據(jù)輸入方式預(yù)先進(jìn)行存儲(chǔ),這樣當(dāng)用戶需要設(shè)置新的用戶表單時(shí),則不再需要重新配置各個(gè)字段的數(shù)據(jù)輸入方式,僅需要查詢相應(yīng)的數(shù)據(jù)表的配置文件即可獲得所涉及的字段的數(shù)據(jù)輸入方式,并生成新的用戶表單,大大減少了開發(fā)的工作量。
在其中一個(gè)實(shí)施例中,請(qǐng)參閱圖3和圖4,圖3為一實(shí)施例中數(shù)據(jù)表生成步驟的流程圖,圖4為圖3所示實(shí)施例中數(shù)據(jù)表生成界面的界面圖,在該實(shí)施例中,該數(shù)據(jù)表生成步驟包括:
s302:提供數(shù)據(jù)表生成界面。
如圖4所示,數(shù)據(jù)表生成界面可以包括三部分:表格列數(shù)配置部分、表格名稱配置部分以及列屬性配置部分。其中表格列數(shù)配置部分用于配置數(shù)據(jù)表的總列數(shù),表格名稱配置部分用于配置數(shù)據(jù)表的名稱,列屬性配置部分用于配置數(shù)據(jù)表中各個(gè)字段的屬性。
在用戶需要新建數(shù)據(jù)表時(shí),可以打開該數(shù)據(jù)表生成界面,首先設(shè)置數(shù)據(jù)表的列數(shù),即對(duì)應(yīng)數(shù)據(jù)表的字段數(shù),處理器在檢測(cè)到用戶設(shè)置的列數(shù)后,會(huì)在列屬性配置部分生成對(duì)應(yīng)數(shù)量的列屬性配置單元,例如圖4,用戶配置的數(shù)據(jù)表的列數(shù)為3,則在列屬性配置部分會(huì)呈現(xiàn)3個(gè)列屬性配置單元,在當(dāng)前界面不能完全顯示該3個(gè)列屬性配置單元時(shí),還可以進(jìn)行分頁(yè)顯示,如圖4所示,從而用戶可以通過鼠標(biāo)的滾輪實(shí)現(xiàn)頁(yè)面的切換等。
其次用戶可以通過表格名稱配置部分配置數(shù)據(jù)表的名稱,即數(shù)據(jù)表配置文件的名稱,該數(shù)據(jù)表名稱可以為英文或者拼音等,另外為了方便還可以設(shè)置數(shù)據(jù)表標(biāo)簽,該標(biāo)簽可以為中文等,便于記憶和輔助查詢,當(dāng)用戶為其他國(guó)家時(shí),該標(biāo)簽還可以設(shè)置為其他語種,例如日語等。
第三,如圖4,生成3個(gè)列屬性配置單元,且每個(gè)列屬性配置單元可以包括:列名稱、列標(biāo)簽、列數(shù)據(jù)類型、列長(zhǎng)度范圍、列默認(rèn)值、列輸入提醒、列特殊用途、數(shù)據(jù)輸入方式等。其中列名稱對(duì)應(yīng)于數(shù)據(jù)表中的列,即字段名稱,列標(biāo)簽可以對(duì)應(yīng)于用戶表單的數(shù)據(jù)項(xiàng)名稱;列數(shù)據(jù)類型可以設(shè)置為文本類型、數(shù)字類型等;列長(zhǎng)度范圍可以包括最大長(zhǎng)度和最小長(zhǎng)度等;列輸入提醒可以用來提示用戶輸入該列數(shù)據(jù)時(shí)的注意點(diǎn),例如至少由6個(gè)字符,必須包含英文字符等,例如列特殊用途可以用來設(shè)置該列的用途,例如用于存儲(chǔ)密碼、圖片、用戶唯一性id(identity,身份)、電子郵件、普通附件、身份證號(hào)等;數(shù)據(jù)輸入方式是最終用戶在用戶表單上輸入數(shù)據(jù)的方法,例如手動(dòng)輸入、從其他頁(yè)面選擇數(shù)據(jù)項(xiàng)輸入、從下拉列表中選擇數(shù)據(jù)項(xiàng)輸入、單項(xiàng)選擇輸入、多項(xiàng)選擇輸入等。上述每個(gè)列屬性配置單元的內(nèi)容并不局限于本實(shí)施例所列的選項(xiàng),在其他實(shí)施例中,可以根據(jù)需要配置每個(gè)列屬性配置單元的內(nèi)容。
s304:通過數(shù)據(jù)表生成界面接收待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)輸入方式。
具體地,參照上文,用戶可以根據(jù)列屬性配置單元配置各個(gè)字段的數(shù)據(jù)輸入方式,從而完成對(duì)數(shù)據(jù)表的配置。
s306:將待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)輸入方式存儲(chǔ)至數(shù)據(jù)表配置文件中。
具體地,為了后續(xù)生成用戶表單時(shí),不再需要對(duì)用戶表單中的每個(gè)字段的數(shù)據(jù)輸入方式進(jìn)行配置,本實(shí)施例中將數(shù)據(jù)表可能涉及的各個(gè)字段的數(shù)據(jù)輸入方式預(yù)先進(jìn)行配置并存儲(chǔ)在了數(shù)據(jù)表配置文件中,當(dāng)用戶配置用戶表單時(shí),可以直接調(diào)用數(shù)據(jù)表配置文件中的數(shù)據(jù),簡(jiǎn)化了用戶表單的生成過程,大大減少了開發(fā)的工作量;另外,在用戶配置數(shù)據(jù)表時(shí),可以通過下拉菜單等來進(jìn)行選擇配置,該選擇配置由研發(fā)人員預(yù)先編程,因此在配置數(shù)據(jù)表的字段時(shí)不再需要用戶進(jìn)行編程,可以大大減少數(shù)據(jù)表配置的工作量。
s308:根據(jù)數(shù)據(jù)表配置文件生成待生成的數(shù)據(jù)表。
具體地,在用戶配置完成數(shù)據(jù)表后,由于處理器已經(jīng)獲取了數(shù)據(jù)表的名稱、總列數(shù)、每個(gè)列的列名稱、列標(biāo)簽、列數(shù)據(jù)類型、列長(zhǎng)度范圍、列默認(rèn)值、列輸入提醒、列特殊用途、數(shù)據(jù)輸入方式等,處理器可以通過執(zhí)行程序?qū)⑦@些信息構(gòu)造出用于創(chuàng)建數(shù)據(jù)表的sql(structuredquerylanguage,結(jié)構(gòu)化查詢語言)語句,然后連接數(shù)據(jù)庫(kù),執(zhí)行該語句則可以在數(shù)據(jù)庫(kù)中創(chuàng)建出對(duì)應(yīng)的數(shù)據(jù)表,其中sql語句需要多增加一個(gè)id(identity,身份)列作為主鍵,用于標(biāo)識(shí)數(shù)據(jù)表中記錄的唯一性。
上述實(shí)施例中,預(yù)先通過數(shù)據(jù)表生成界面接收數(shù)據(jù)表中所涉及的各個(gè)字段的輸入方式等配置,并生成相應(yīng)的配置文件,從而在用戶表單生成過程中,不再需要對(duì)用戶表單所涉及的各個(gè)字段的數(shù)據(jù)輸入方式等進(jìn)行配置,而只需要調(diào)用相應(yīng)數(shù)據(jù)表的數(shù)據(jù)表配置文件可以查詢到相應(yīng)字段的相關(guān)配置,例如數(shù)據(jù)輸入方式等,從而可以大大減少開發(fā)的工作量。
請(qǐng)參閱圖5和圖6,圖5為圖2所示實(shí)施例中的步驟s202的流程圖,圖6為圖5所示的用戶表單生成界面的界面圖,在該實(shí)施例中,步驟s202,即接收并存儲(chǔ)待生成的用戶表單所涉及的數(shù)據(jù)表名稱和各個(gè)字段的步驟,可以包括:
s502:提供用戶表單生成界面。
具體地,參閱圖6,提供用戶表單生成界面,該用戶表單生成界面包括數(shù)據(jù)表選擇部分、用戶表單名稱配置部分和數(shù)據(jù)表字段選擇部分。其中,數(shù)據(jù)表選擇部分用于選擇待生成的用戶表單所屬的數(shù)據(jù)表,用戶表單名稱配置部分用于配置用戶表單的名稱以便于后續(xù)使用用戶表單時(shí)的調(diào)用,數(shù)據(jù)表字段選擇部分用于提供所選擇的數(shù)據(jù)表的所有字段,以便于用戶從中選擇待生成的用戶表單所涉及的字段。
一般一個(gè)數(shù)據(jù)表可以配置多個(gè)用戶表單,在用戶需要新建用戶表單時(shí),可以打開該用戶表單生成界面,首先從數(shù)據(jù)表選擇部分選擇待生成的用戶表單所屬的數(shù)據(jù)表,如圖6,選擇用戶基本信息數(shù)據(jù)表,該表中存在3個(gè)字段,包括用戶名稱、用戶性別和用戶身份證號(hào),則在數(shù)據(jù)表字段選擇部分會(huì)顯示該3個(gè)字段,以供用戶選擇。
其次,用戶可以通過用戶表單名稱配置部分配置用戶表單的名稱,用戶可以通過該部分設(shè)置用戶表單名稱、用戶表單標(biāo)簽以及用戶表單標(biāo)題等,用戶表單名稱可以與用戶表單配置文件的名稱相同,以標(biāo)識(shí)該用戶表單名稱是唯一的,用戶表單標(biāo)簽是用于幫助用戶記憶以快速查找到該用戶表單,用戶表單標(biāo)題是顯示在用戶表單上的,例如“用戶基本信息數(shù)據(jù)表”等。
第三,當(dāng)用戶選擇了數(shù)據(jù)表,且用戶表單生成界面顯示了相應(yīng)數(shù)據(jù)表中各個(gè)字段,包括每個(gè)字段的名稱、標(biāo)簽等,可以在該字段的旁邊設(shè)置一選擇框,當(dāng)用戶勾選該選擇框時(shí),則表示該用戶表單涉及該字段。
s504:通過用戶表單生成界面接收所涉及的數(shù)據(jù)表名稱。
具體地,參見圖6,用戶可以通過下拉菜單的方式選擇相應(yīng)的數(shù)據(jù)表,也可以直接通過輸入數(shù)據(jù)表的名稱進(jìn)行選擇。通過直接輸入數(shù)據(jù)表的名稱進(jìn)行選擇時(shí),則可以利用上述所設(shè)置的數(shù)據(jù)表的標(biāo)簽,用戶僅需輸入相應(yīng)的數(shù)據(jù)表的標(biāo)簽,即可以調(diào)用出相應(yīng)的數(shù)據(jù)表。
s506:根據(jù)數(shù)據(jù)表名稱顯示相應(yīng)數(shù)據(jù)表中各個(gè)字段。
具體地,在用戶選擇好相應(yīng)的數(shù)據(jù)表之后,用戶表單生成界面則可以直接顯示該數(shù)據(jù)表中所涉及的相應(yīng)的字段,例如圖6中所示的用戶名稱、用戶性別和用戶身份證號(hào)字段。
s508:通過用戶表單生成界面接收所選擇的數(shù)據(jù)表中的字段。
具體地,當(dāng)顯示出數(shù)據(jù)表的相應(yīng)字段時(shí),用戶可以選擇當(dāng)前待生成的用戶表單所涉及的字段,從而可以僅通過簡(jiǎn)單的勾選動(dòng)作來配置用戶表單,不需要再次編寫復(fù)雜的程序等。
s510:存儲(chǔ)所選擇的數(shù)據(jù)表中的字段作為用戶表單所涉及的字段,以及存儲(chǔ)所接收的數(shù)據(jù)表名稱作為用戶表單所涉及的數(shù)據(jù)表名稱。
當(dāng)用戶配置完成用戶表單的相應(yīng)字段后,處理器生成用戶表單配置文件,并進(jìn)行存儲(chǔ),該用戶表單配置文件的名稱為用戶表單的名稱。
在生成用戶表單配置文件后,處理器可以根據(jù)用戶表單的名稱讀取該用戶表單配置文件,從中獲取該用戶表單的名稱以及所有字段,包括各個(gè)字段的默認(rèn)值等,然后根據(jù)數(shù)據(jù)表名稱讀取相應(yīng)的數(shù)據(jù)表配置文件,獲取用戶表單中各個(gè)字段的數(shù)據(jù)輸入方式,并根據(jù)各個(gè)字段的數(shù)據(jù)輸入方式來調(diào)用相應(yīng)的輸入控件,依次顯示在顯示界面供用戶輸入。例如如果數(shù)據(jù)輸入方式是下拉列表輸入方式,則調(diào)用相應(yīng)的下拉列表控件;如果數(shù)據(jù)輸入方式是時(shí)間輸入方式,則調(diào)用時(shí)間輸入控件;如果數(shù)據(jù)輸入方式是調(diào)用日期輸入方式,則調(diào)用日期輸入控件;如果數(shù)據(jù)輸入方式是附件上傳方式,則調(diào)用附件上傳控件;如果數(shù)據(jù)輸入方式是普通文本輸入方式,則調(diào)用普通文本輸入控件。對(duì)于需要用戶數(shù)據(jù)的控件,處理器可以提供方法供用戶配置該控件的相關(guān)數(shù)據(jù),例如當(dāng)某個(gè)數(shù)據(jù)表中某數(shù)據(jù)列的輸入方式為下拉列表輸入時(shí),處理器可以提供方法配置該下拉列表中所需要的選擇數(shù)據(jù),例如“已完成,進(jìn)行中,取消,掛起”,然后將這些數(shù)據(jù)保存在控件數(shù)據(jù)配置文件中,控件配置文件的配置數(shù)據(jù)按照數(shù)據(jù)表名稱和數(shù)據(jù)列名稱來索引存儲(chǔ),每一條數(shù)據(jù)可以對(duì)應(yīng)到具體的數(shù)據(jù)表中的某一個(gè)數(shù)據(jù)列。處理器還提供方法,用戶可以隨時(shí)修改任何一個(gè)數(shù)據(jù)表中數(shù)據(jù)列涉及的控件的配置數(shù)據(jù)。
在該實(shí)施例中,用戶僅需要通過簡(jiǎn)單地操作即可配置出新的用戶表單,且不再需要對(duì)新的用戶表單的數(shù)據(jù)輸入方式等進(jìn)行重新編碼,操作簡(jiǎn)單。
在其中一個(gè)實(shí)施例中,在數(shù)據(jù)表生成的過程中,參閱圖4,還可以包括通過數(shù)據(jù)表生成界面接收待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)校驗(yàn)方式。將待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)校驗(yàn)方式存儲(chǔ)至數(shù)據(jù)表配置文件中。其中,此處所述的數(shù)據(jù)校驗(yàn)方式包括數(shù)據(jù)類型、長(zhǎng)度范圍以及用途,當(dāng)用戶在配置數(shù)據(jù)表時(shí),將該些內(nèi)容進(jìn)行配置后,則可以根據(jù)該些內(nèi)容對(duì)用戶輸入的數(shù)據(jù)進(jìn)行校驗(yàn)。在實(shí)際應(yīng)用中,將數(shù)據(jù)表所涉及的每個(gè)字段的數(shù)據(jù)校驗(yàn)方式進(jìn)行存儲(chǔ),例如數(shù)據(jù)類型、長(zhǎng)度范圍以及用途等,當(dāng)用戶通過用戶表單輸入數(shù)據(jù)時(shí),可以通過數(shù)據(jù)表配置文件中存儲(chǔ)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途等對(duì)用戶輸入的數(shù)據(jù)進(jìn)行實(shí)時(shí)校驗(yàn),以保證數(shù)據(jù)的有效性。
具體地,請(qǐng)參閱圖7,圖7為一實(shí)施例中輸入數(shù)據(jù)處理步驟的流程圖,該輸入數(shù)據(jù)處理步驟可以在圖2所示的步驟s208之后,即在生成用戶表單的步驟之后,還可以包括:
s702:通過所生成的用戶表單接收輸入數(shù)據(jù)。
具體地,當(dāng)生成用戶表單后,用戶即可以通過該用戶表單輸入待輸入的數(shù)據(jù),例如以圖6所示的用戶表單生成界面所生成的用戶表單為例,用戶可以通過該用戶表單輸入用戶名稱和身份證號(hào)。
s704:根據(jù)數(shù)據(jù)表名稱讀取相應(yīng)的數(shù)據(jù)表配置文件。
具體地,在用戶輸入用戶名稱和身份證號(hào)后,需要對(duì)用戶輸入的名稱和身份證號(hào)進(jìn)行驗(yàn)證,從而可以保證用戶輸入的數(shù)據(jù)均是有效的數(shù)據(jù)。
s706:從數(shù)據(jù)表配置文件獲取用戶表單中各個(gè)字段的數(shù)據(jù)校驗(yàn)方式。
具體地,在數(shù)據(jù)表生成的過程中即將數(shù)據(jù)表中各個(gè)字段的數(shù)據(jù)校驗(yàn)方式進(jìn)行了配置,這樣在生成用戶表單時(shí),不再需要對(duì)該字段的數(shù)據(jù)校驗(yàn)方式進(jìn)行配置,可以減少開發(fā)工作量。且通過數(shù)據(jù)表名稱可以查詢到相應(yīng)的數(shù)據(jù)表配置文件,從而當(dāng)用戶輸入數(shù)據(jù)時(shí),可以調(diào)用數(shù)據(jù)表配置文件以實(shí)現(xiàn)對(duì)輸入的數(shù)據(jù)的校驗(yàn)。
s708:根據(jù)數(shù)據(jù)校驗(yàn)方式對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn)。
具體地,每當(dāng)處理器檢測(cè)到用戶通過用戶表單提交輸入數(shù)據(jù)時(shí),即通過數(shù)據(jù)表配置文件對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn)。
s710:當(dāng)輸入數(shù)據(jù)校驗(yàn)成功時(shí),則存儲(chǔ)輸入數(shù)據(jù)。
具體地,當(dāng)輸入數(shù)據(jù)校驗(yàn)成功時(shí),則處理器將該輸入數(shù)據(jù)提交到相應(yīng)的數(shù)據(jù)表中,即處理器根據(jù)用戶表單名稱讀取用戶表單配置文件,從而獲取該用戶表單上所有的字段和對(duì)應(yīng)的數(shù)據(jù)表名稱,再獲取用戶表單上每個(gè)字段的值,構(gòu)造sql語句,連接數(shù)據(jù)庫(kù),將相應(yīng)的輸入數(shù)據(jù)存儲(chǔ)至相應(yīng)的數(shù)據(jù)表中。
s712:當(dāng)輸入數(shù)據(jù)校驗(yàn)失敗時(shí),則提示輸入數(shù)據(jù)校驗(yàn)失敗。
具體地,當(dāng)輸入數(shù)據(jù)校驗(yàn)失敗的時(shí)候,則可以通過顯示數(shù)據(jù)校驗(yàn)失敗的信息給用戶,以提示用戶重新輸入數(shù)據(jù)等。
上述實(shí)施例中,用戶通過用戶表單輸入數(shù)據(jù)時(shí),可以根據(jù)數(shù)據(jù)表名稱調(diào)用相應(yīng)的數(shù)據(jù)表配置文件,從而可以根據(jù)數(shù)據(jù)表配置文件對(duì)輸入數(shù)據(jù)進(jìn)行自動(dòng)校驗(yàn),不需要在生成用戶表單時(shí)重新設(shè)置數(shù)據(jù)校驗(yàn)方式,可以減少開發(fā)過程的工作量。
在其中一個(gè)實(shí)施例中,步驟s708即根據(jù)數(shù)據(jù)校驗(yàn)方式對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn)的步驟,可以包括:根據(jù)數(shù)據(jù)校驗(yàn)方式,對(duì)輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途進(jìn)行校驗(yàn);當(dāng)輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途均校驗(yàn)成功,則返回輸入數(shù)據(jù)校驗(yàn)成功的結(jié)果;當(dāng)輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途至少有一個(gè)校驗(yàn)不成功,則返回輸入數(shù)據(jù)校驗(yàn)失敗的結(jié)果。
具體地,可以參見圖8,圖8為圖7所示實(shí)施例中步驟s708的流程圖,在該實(shí)施例中,首先根據(jù)數(shù)據(jù)表名稱讀取數(shù)據(jù)表配置文件,然后從該數(shù)據(jù)表配置文件中獲取用戶表單中每個(gè)字段的數(shù)據(jù)類型、長(zhǎng)度范圍和用途;其次對(duì)用戶表單中的每個(gè)輸入數(shù)據(jù)進(jìn)行有效性判斷,例如當(dāng)數(shù)據(jù)表配置文件中配置的數(shù)據(jù)類型為整數(shù)時(shí),則調(diào)用整數(shù)有效性校驗(yàn)函數(shù)對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn);如果數(shù)據(jù)表配置文件中配置的數(shù)據(jù)類型為小數(shù),則調(diào)用小數(shù)有效性校驗(yàn)函數(shù)對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn);如果數(shù)據(jù)表配置文件中配置的數(shù)據(jù)類型為時(shí)間或日期,則調(diào)用時(shí)間或日期有效性校驗(yàn)函數(shù)對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn);如果數(shù)據(jù)表配置文件中配置的數(shù)據(jù)類型為文本,則判斷文本長(zhǎng)度范圍是否合理,如果不合理,則提示數(shù)據(jù)長(zhǎng)度范圍錯(cuò)誤,如果文本長(zhǎng)度范圍合理,且數(shù)據(jù)字段的用途為存儲(chǔ)電子郵件,則調(diào)用電子郵件有效性判斷函數(shù)對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn);如果數(shù)據(jù)字段的用途為存儲(chǔ)電話號(hào)碼,則調(diào)用電話號(hào)碼有效性判斷函數(shù)對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn);如果數(shù)據(jù)字段的用途為存儲(chǔ)身份id,則調(diào)用身份證有效性判斷函數(shù)對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn);如果數(shù)據(jù)字段的用途為存儲(chǔ)url地址,則調(diào)用url地址有效性判斷函數(shù)對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn);如果數(shù)據(jù)字段的用途不為存儲(chǔ)url地址、存儲(chǔ)身份id、存儲(chǔ)電話號(hào)碼和存儲(chǔ)電子郵件,則調(diào)用其他有效性判斷函數(shù)對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn);如果數(shù)據(jù)表配置文件中配置的數(shù)據(jù)類型不為文本、時(shí)間或日期、小數(shù)和整數(shù),則調(diào)用其他數(shù)據(jù)類型的有效性函數(shù)對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn)。
上述實(shí)施例中,通過對(duì)輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途進(jìn)行校驗(yàn),可以保證輸入的數(shù)據(jù)的有效性,且不需要再次設(shè)置輸入數(shù)據(jù)的數(shù)據(jù)校驗(yàn)方式,僅僅通過數(shù)據(jù)表名稱即可得到相應(yīng)的字段的數(shù)據(jù)校驗(yàn)方式,操作簡(jiǎn)單方便。
請(qǐng)參閱圖9所示,圖9為一實(shí)施例中用戶表單生成裝置的結(jié)構(gòu)示意圖,在該實(shí)施例中,該裝置可以包括:
第一接收模塊100,用于獲取待生成的用戶表單所涉及的數(shù)據(jù)表名稱和各個(gè)字段。
第一讀取模塊200,用于根據(jù)數(shù)據(jù)表名稱讀取相應(yīng)數(shù)據(jù)表配置文件。
第一獲取模塊300,用于從數(shù)據(jù)表配置文件獲取各個(gè)字段的數(shù)據(jù)輸入方式。
用戶表單生成模塊400,用于根據(jù)各個(gè)字段的數(shù)據(jù)輸入方式,生成用戶表單。
在其中一個(gè)實(shí)施例中,第一接收模塊100還用于提供數(shù)據(jù)表生成界面,并通過數(shù)據(jù)表生成界面接收待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)輸入方式。
存儲(chǔ)模塊,用于將待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)輸入方式存儲(chǔ)至數(shù)據(jù)表配置文件中。
數(shù)據(jù)表生成模塊,用于根據(jù)數(shù)據(jù)表配置文件生成待生成的數(shù)據(jù)表。
在其中一個(gè)實(shí)施例中,第一接收模塊100包括:
第一接收單元,用于提供用戶表單生成界面,并通過用戶表單生成界面接收所涉及的數(shù)據(jù)表名稱,以及通過用戶表單生成界面接收所選擇的數(shù)據(jù)表中的字段。
顯示單元,用于根據(jù)數(shù)據(jù)表名稱顯示相應(yīng)數(shù)據(jù)表中各個(gè)字段。
存儲(chǔ)單元,用于存儲(chǔ)所選擇的數(shù)據(jù)表中的字段作為用戶表單所涉及的字段,以及存儲(chǔ)所接收的數(shù)據(jù)表名稱作為用戶表單所涉及的數(shù)據(jù)表名稱。
在其中一個(gè)實(shí)施例中,第一接收模塊100還用于通過數(shù)據(jù)表生成界面接收待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)校驗(yàn)方式。
存儲(chǔ)模塊還用于將待生成的數(shù)據(jù)表的各個(gè)字段的數(shù)據(jù)校驗(yàn)方式存儲(chǔ)至數(shù)據(jù)表配置文件中。
裝置還可以包括:
第二接收模塊,用于通過所生成的用戶表單接收輸入數(shù)據(jù)。
第二讀取模塊,用于根據(jù)數(shù)據(jù)表名稱讀取相應(yīng)的數(shù)據(jù)表配置文件。
第二獲取模塊,用于從數(shù)據(jù)表配置文件獲取用戶表單中各個(gè)字段的數(shù)據(jù)校驗(yàn)方式。
校驗(yàn)?zāi)K,用于根據(jù)數(shù)據(jù)校驗(yàn)方式對(duì)輸入數(shù)據(jù)進(jìn)行校驗(yàn),且在輸入數(shù)據(jù)校驗(yàn)成功時(shí),則存儲(chǔ)輸入數(shù)據(jù);在輸入數(shù)據(jù)校驗(yàn)失敗時(shí),則提示輸入數(shù)據(jù)校驗(yàn)失敗。
在其中一個(gè)實(shí)施例中,校驗(yàn)?zāi)K可以包括:
檢驗(yàn)單元,用于根據(jù)數(shù)據(jù)校驗(yàn)方式,對(duì)輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途進(jìn)行校驗(yàn)。
結(jié)果返回單元,用于在輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途均校驗(yàn)成功,則返回輸入數(shù)據(jù)校驗(yàn)成功的結(jié)果;在輸入數(shù)據(jù)的數(shù)據(jù)類型、長(zhǎng)度范圍以及用途至少有一個(gè)校驗(yàn)不成功,則返回輸入數(shù)據(jù)校驗(yàn)失敗的結(jié)果。
上述對(duì)于用戶表單生成裝置的具體限定可以參照上文對(duì)于用戶表單生成方法的限定,在此不再贅述。
以上所述實(shí)施例的各技術(shù)特征可以進(jìn)行任意的組合,為使描述簡(jiǎn)潔,未對(duì)上述實(shí)施例中的各個(gè)技術(shù)特征所有可能的組合都進(jìn)行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認(rèn)為是本說明書記載的范圍。
以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。