馬振翔
(包頭市特種設(shè)備檢驗(yàn)所,內(nèi)蒙古包頭,014030)
以三層BS和CS結(jié)構(gòu)為基礎(chǔ)的考勤管理系統(tǒng)設(shè)計(jì)探討
馬振翔
(包頭市特種設(shè)備檢驗(yàn)所,內(nèi)蒙古包頭,014030)
三層結(jié)構(gòu)是目前應(yīng)用比較廣泛一種結(jié)構(gòu),并且取得實(shí)際效果比較好的。本文以該模型下的考勤管理系統(tǒng)為例詳細(xì)地介紹了三層b /s和c/ s相結(jié)合的開放式分布系統(tǒng)的建設(shè)方法,以期能夠?yàn)橄嚓P(guān)的專業(yè)人員在進(jìn)行基于三層結(jié)構(gòu)的相關(guān)系統(tǒng)設(shè)計(jì)過程中有一定的指導(dǎo)意義。
三層結(jié)構(gòu);B/ S;C/S ;考勤管理系統(tǒng)
B/S軟件系統(tǒng)設(shè)計(jì)是internet技術(shù)發(fā)展興起中一個(gè)比較重要的部分,它主要是針對(duì)原先體系結(jié)構(gòu)的一種變化或者是改進(jìn)結(jié)構(gòu),并且能夠使得在瀏覽器進(jìn)行相關(guān)的請(qǐng)求服務(wù)過程中能夠綜合考慮到邏輯在前端和后端的實(shí)現(xiàn)過程中的時(shí)間差異性的表現(xiàn)。再者,因?yàn)椴與/s和b/s技術(shù)都存在各自的優(yōu)優(yōu)劣地方,所以本文采用的是b/s和c/ s相結(jié)合的結(jié)構(gòu)建設(shè),這樣就能夠使得在實(shí)際的系統(tǒng)應(yīng)用過程中能夠準(zhǔn)確地把握邏輯在前端和后端之間的傳遞關(guān)系,并且做好對(duì)中間環(huán)節(jié)的有效控制從而實(shí)現(xiàn)分布式應(yīng)用程序的有效應(yīng)用。
三層結(jié)構(gòu)的出現(xiàn)實(shí)際上是對(duì)二層結(jié)構(gòu)的一種改進(jìn)和變形,因?yàn)樵谠鹊亩咏Y(jié)構(gòu)處理過程中對(duì)服務(wù)器的數(shù)據(jù)服務(wù)和業(yè)務(wù)服務(wù)以及中間的客戶層服務(wù)存在傳輸上的不足,通過三層結(jié)構(gòu)就能夠有效改進(jìn),增強(qiáng)了服務(wù)在不同用戶界面邏輯上的聯(lián)系性。再者,三層結(jié)構(gòu)的分布也是比較科學(xué)的,它把各個(gè)不同功能結(jié)構(gòu)分布在了不同的計(jì)算機(jī)上,這樣就能夠?qū)崿F(xiàn)各部分之間的獨(dú)立管理,并且能夠使得邏輯在客戶機(jī)轉(zhuǎn)移到中間層組件這一過程能夠?qū)崿F(xiàn)有效的控制,再者,三層結(jié)構(gòu)對(duì)數(shù)據(jù)數(shù)據(jù)源層的數(shù)據(jù)庫(kù)控制,也是通過比較科學(xué)的。能夠保證數(shù)據(jù)能夠?qū)崿F(xiàn)及時(shí)的存儲(chǔ)和調(diào)取。
因?yàn)樵诋?dāng)前的企業(yè)發(fā)展過程中,需要考慮到網(wǎng)絡(luò)化的影響,所以一般情況下企業(yè)都會(huì)有一定的考勤系統(tǒng)??记谙到y(tǒng)既能夠節(jié)省相關(guān)的人力資源,也能夠提升企業(yè)的整體科技水平和實(shí)際的管理能力,所以考勤系統(tǒng)的建設(shè)對(duì)企業(yè)自身的發(fā)展來說是十分關(guān)鍵的,當(dāng)前的發(fā)展情況一般都是采用三層結(jié)構(gòu)來進(jìn)行系統(tǒng)的開發(fā)和維護(hù),這樣有利于考勤系統(tǒng)和企業(yè)內(nèi)部的數(shù)據(jù)庫(kù)之間進(jìn)行信息的交互。下面將會(huì)介紹這種設(shè)計(jì)思想在實(shí)際系統(tǒng)中的具體應(yīng)用。
因?yàn)槿龑咏Y(jié)構(gòu)主要是通過數(shù)據(jù)庫(kù)訪問之間建立起直接尋址的數(shù)據(jù)連接方式,就能夠保證在服務(wù)器的連接過程中能夠大大減少相關(guān)的中間環(huán)節(jié),并且使得客戶端的數(shù)量不再受到之前服務(wù)器總數(shù)和中間層DOOM連接的限制。并且能夠?qū)崿F(xiàn)動(dòng)態(tài)的地址分配和相關(guān)的數(shù)據(jù)釋放連接,能夠保證客戶端在進(jìn)行實(shí)際的問題出現(xiàn)時(shí),能夠?qū)崿F(xiàn)及時(shí)而準(zhǔn)確的信息反饋。
通過三層結(jié)構(gòu),就能夠使得相關(guān)建設(shè)過程中業(yè)務(wù)規(guī)則和合法性的校驗(yàn)在中間層進(jìn)行處理,而不是在前端和后端。這樣就能夠更有效地更改中間的dll文件,從而保證在實(shí)際的數(shù)據(jù)庫(kù)修改過程中,存儲(chǔ)更加方便。
前文中提到了,在系統(tǒng)的建設(shè)過程中一般都是兩個(gè)結(jié)構(gòu)相結(jié)合的情況,這就需要有兩個(gè)不同的層次來對(duì)二者進(jìn)行分別處理然后再進(jìn)行綜合化的管理。一般情況下都是由c /s結(jié)構(gòu)完成通信任務(wù),主要是經(jīng)過系統(tǒng)的信息變換和相關(guān)的檢測(cè)來保證整體的信息傳遞可靠無(wú)誤;而b/s結(jié)構(gòu)實(shí)現(xiàn)實(shí)際的查詢或者是請(qǐng)假業(yè)務(wù),它主要是針對(duì)信息在服務(wù)器內(nèi)部的管理和響應(yīng)服務(wù)來進(jìn)行操作的。通過兩個(gè)結(jié)構(gòu)的協(xié)調(diào)運(yùn)作和綜合管理就能夠保證兩個(gè)不同的部分,在功能的實(shí)現(xiàn)上存在一定的獨(dú)立性,有利于系統(tǒng)的維護(hù),也有利于簡(jiǎn)化相關(guān)的建設(shè)過程。
3.1 系統(tǒng)三層結(jié)構(gòu)
一般情況下,系統(tǒng)三層結(jié)構(gòu)都是由數(shù)據(jù)源層、客戶機(jī)層和中間層來組成的,但是在不同層次所實(shí)現(xiàn)的功能是不一樣的,所以就來進(jìn)行針對(duì)化的設(shè)計(jì)。首先數(shù)據(jù)源層一般都是數(shù)據(jù)庫(kù)組成的,這樣就能夠保證數(shù)據(jù)源頭有強(qiáng)大的存儲(chǔ)功能,并且能夠保證處理過程的可靠性,進(jìn)而使得存儲(chǔ)過程和相關(guān)的數(shù)據(jù)讀取過程更加簡(jiǎn)潔。
再者就是客戶機(jī)從,因?yàn)榭蛻魴C(jī)從主要是針對(duì)的客戶的實(shí)際使用,所以這就要求界面比較簡(jiǎn)潔并且相關(guān)的語(yǔ)言文字通俗易懂,所以我們就采用了VB來進(jìn)行開發(fā),這樣就可以把用戶界面放在一個(gè)比較簡(jiǎn)單的編程環(huán)境內(nèi)進(jìn)行.通過相關(guān)的處理我們可以保證在實(shí)際的軟件編寫過程中,能夠把OCX放在ASP頁(yè)面中,這就節(jié)省了很多的中間步驟,能夠保證在實(shí)際的文件編譯過程中,能夠讓中間的操作流程也能得到相應(yīng)的監(jiān)控和管理。并且也能夠?qū)崿F(xiàn)用戶的輸入和輸出,進(jìn)而連接數(shù)據(jù)原曾和中間層的一個(gè)紐帶。
中間層也是業(yè)務(wù)層,它主要利用COM來進(jìn)行開發(fā)的,因?yàn)橥ㄟ^控制組件可以保證連接池和事務(wù)代理之間的連接更加可控,,COM +/MTS在池中維護(hù)連接, 使后續(xù)連接請(qǐng)求可以使用這個(gè)連接,而不必打開新連接,這種方式的系統(tǒng)設(shè)計(jì)可以保證在進(jìn)行處理的過程中能夠?qū)崿F(xiàn)相關(guān)的獨(dú)立性操作,并且有利于相關(guān)的維護(hù)工作的進(jìn)行,從而減少了公司的實(shí)際開銷。
3.2 系統(tǒng) C/S 結(jié)構(gòu)的實(shí)現(xiàn)
在c/s結(jié)構(gòu)中主要是網(wǎng)絡(luò)通訊,通過這個(gè)結(jié)構(gòu)的跨平臺(tái)性質(zhì)和自身的結(jié)構(gòu)優(yōu)勢(shì),我們可以實(shí)現(xiàn)在不同的機(jī)器之間的交互和服務(wù)的傳遞,起到了疏導(dǎo)信息的作用,所以我們就需要考慮好中間過程通訊的相關(guān)內(nèi)容。信息一般分為信息頭和信息內(nèi)容兩部分,考慮到傳輸過程可能出現(xiàn)的一些問題和信息自身的易受到干擾的特性,采用分幀發(fā)送的格式,這就要求發(fā)送的幀中存在一定的地址標(biāo)識(shí)符和數(shù)據(jù)長(zhǎng)度等標(biāo)志,地址標(biāo)識(shí)符主要是為了保證信息在傳遞完成后能夠準(zhǔn)確地存儲(chǔ)到相應(yīng)的存儲(chǔ)區(qū),數(shù)碼長(zhǎng)度和其他的部分是為了方便信息接收后的相關(guān)校驗(yàn)工作。這樣就能夠保證在數(shù)據(jù)接收的時(shí)候,采用相關(guān)的命令加數(shù)據(jù)的形式來進(jìn)行讀取和驗(yàn)收。并且這一模式可以用作固定的命令傳輸,不用考慮到其他的冗余度和錯(cuò)誤率。
在c/s結(jié)構(gòu)中另外一根比較重要的部分就是對(duì)can控制卡的通訊管理。首先應(yīng)該了解清楚它的實(shí)際的通訊步驟,這主要是分為三部分,第一部分就是發(fā)送前的初始化。主要是進(jìn)行一些相關(guān)的重要設(shè)置。I/O設(shè)置,波特率設(shè)置以及中斷的設(shè)置,特別是中斷的設(shè)置要做好對(duì)中斷地址的引用和中斷返回的的設(shè)置,因?yàn)橹袛嗍菍?shí)現(xiàn)整個(gè)過程的關(guān)鍵所在。其次就是can控制卡的功能開啟,這一階段的操作是比較簡(jiǎn)單的,在此不做贅述。最后就是can控制卡的功能關(guān)閉。因?yàn)樵谟行┙Y(jié)構(gòu)中沒有設(shè)計(jì)好控制卡關(guān)閉前的檢測(cè),這就會(huì)導(dǎo)致一部分信息的丟失和系統(tǒng)整體運(yùn)作的不安全性大大增加,所以這一階段也要特別注意這個(gè)問題。
3.3 系統(tǒng) B/S 結(jié)構(gòu)的實(shí)現(xiàn)
在b/s結(jié)構(gòu)的實(shí)現(xiàn)過程中我們一般都是采用iis4.0作為b/s結(jié)構(gòu)的開發(fā)平臺(tái)。因?yàn)樵撈脚_(tái)的兼容性是比較高的,并且對(duì)數(shù)據(jù)組件的掌控也是比較到位的,再者它可以通過相關(guān)的技術(shù)手段來實(shí)現(xiàn)多數(shù)據(jù)庫(kù)之間的訪問,這樣就有利于考勤管理系統(tǒng)復(fù)雜功能的實(shí)現(xiàn)。
ADO是一種數(shù)據(jù)庫(kù)訪問工具,它為用戶提供了很多用戶對(duì)象來進(jìn)行操作,主要包括的就是對(duì)象的連接和相關(guān)的請(qǐng)求判斷的處理,采用這一工具是比較方便的。這樣就能夠?qū)崿F(xiàn)在外部數(shù)據(jù)庫(kù)的訪問過程中能夠有一定的記錄,并且建立起良好的連接,有利于后續(xù)建設(shè)工作的進(jìn)行。一般情況下,在外包數(shù)據(jù)庫(kù)的訪問過程中,用戶首先需要做的就是向相關(guān)的服務(wù)器提出服務(wù)請(qǐng)求,然后服務(wù)器會(huì)做出自行的判斷,但根據(jù)用戶的請(qǐng)求進(jìn)行分區(qū)劃址,然后進(jìn)行相關(guān)的.asp文件操作。在進(jìn)行該操作的時(shí)候,如果服務(wù)器判斷該文件會(huì)出現(xiàn)的腳本程序上,那么就會(huì)進(jìn)行下一步的執(zhí)行指令,將相關(guān)的部分調(diào)用到ODBC部分,這樣就實(shí)現(xiàn)了整體結(jié)構(gòu)內(nèi)部嚴(yán)謹(jǐn)?shù)慕Y(jié)構(gòu)性,也會(huì)給后期的維護(hù)和問題的處理工作帶來很大的便利。在執(zhí)行指令的時(shí)候,時(shí)候需要調(diào)用的是sql指令來對(duì)用戶進(jìn)行發(fā)送操作,這樣就能夠?qū)崿F(xiàn)對(duì)數(shù)據(jù)庫(kù)中相關(guān)信息的讀取和存儲(chǔ)。然后經(jīng)過服務(wù)信道的傳輸,發(fā)送到實(shí)際的客戶機(jī)上來進(jìn)行瀏覽器的顯示。
在考勤管理系統(tǒng)的分布式程序開發(fā)過程中需要做好的就是對(duì)c/s結(jié)構(gòu)和b/s結(jié)構(gòu)的綜合設(shè)計(jì),并但二者之間的結(jié)合過程中,也要做好相應(yīng)的處理,首先,結(jié)構(gòu)體系的中c/s建設(shè)主要的就是數(shù)據(jù)的傳輸和通訊過程的控制,而b/s結(jié)構(gòu)需要做的就是對(duì)數(shù)據(jù)庫(kù)的訪問和用戶顯示等操作。所以用好拓?fù)浣Y(jié)構(gòu)和相關(guān)的系統(tǒng)結(jié)構(gòu)的聯(lián)合是本設(shè)計(jì)的關(guān)鍵。針對(duì)本文的研究,筆者提出了上面的幾點(diǎn)要求希望能夠?yàn)閷I(yè)人士的開發(fā)有一定的指導(dǎo)意義。
[1]成嘉奇.基于B/S的財(cái)務(wù)顧管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].大連理工大學(xué),2015.
[2]蘭麗娜.基于web、Wi-Fi和Android的考勤與通信系統(tǒng)的開發(fā)[D].河北科技大學(xué),2013.
[3]朱洪鑫.基于B/S的鐵路司機(jī)考勤管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué),2013.
Design of attendance management system based on three layer BS and CS structure
Ma Zhenxiang
(Baotou special equipment inspection institute,Baotou Inner Mongolia,014030)
Three-tier structure is currently widely used in a structure, and get the actual effect is better. In this paper, the model of the attendance management system as an example to detail the three layers of b / s and c / s combined open distribution system construction methods, with a view to the relevant professionals in the three-tier structure based on the relevant System design process has some guiding significance.
three layer structure; B/ S; C/S; attendance management system