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