本系統(tǒng)采用B/S結(jié)構(gòu),即服務(wù)器/瀏覽器模式,主體應(yīng)用部署在服務(wù)器端,客戶端只需要有IE瀏覽器,并且能訪問(wèn)本系統(tǒng)服務(wù)器即可。
為了滿足客戶具有下級(jí)單位的管理問(wèn)題,本系統(tǒng)還支持多單位的管理。建立多個(gè)單位后,每個(gè)單位的用戶可以登錄自己?jiǎn)挝坏墓芾硐到y(tǒng),使用自己?jiǎn)挝华?dú)立的權(quán)限設(shè)置。如果用戶具有多個(gè)單位的登錄權(quán)限,在登錄系統(tǒng)時(shí),還可以選擇需要登錄的單位,進(jìn)入到指定單位的系統(tǒng)中。在數(shù)據(jù)庫(kù)層,每個(gè)單位的數(shù)據(jù)是獨(dú)立存儲(chǔ)的,可以有效的分散系統(tǒng)在運(yùn)行過(guò)程中的數(shù)據(jù)壓力。
四、主要解決的問(wèn)題
4.1 用戶使用問(wèn)題
本系統(tǒng)在設(shè)計(jì)時(shí),充分考慮了用戶的使用習(xí)慣,采用模擬應(yīng)用程序的系統(tǒng)界面,保留了諸如“列表中單選、復(fù)選、批量選擇”等功能,可以使用戶快速上手、快速熟悉。
在界面設(shè)計(jì)時(shí),盡量滿足人體工程學(xué)的要求,使用戶鼠標(biāo)滑動(dòng)的軌跡最短,點(diǎn)擊次數(shù)最少,減少用戶使用系統(tǒng)時(shí)的工作強(qiáng)度。
4.2 系統(tǒng)維護(hù)問(wèn)題
系統(tǒng)的“組織機(jī)構(gòu)管理”、“數(shù)據(jù)結(jié)構(gòu)管理”、“權(quán)限設(shè)置”、“系統(tǒng)設(shè)置”的功能,采用簡(jiǎn)單易用的界面設(shè)計(jì),很多界面大量采用了拖拽等功能,降低了系統(tǒng)維護(hù)的難度,使系統(tǒng)管理員、業(yè)務(wù)管理員可以方便、快捷的對(duì)系統(tǒng)進(jìn)行日常的維護(hù)和管理。
4.3 數(shù)據(jù)及原文存儲(chǔ)問(wèn)題
為了加快系統(tǒng)的查詢速度,降低數(shù)據(jù)庫(kù)的運(yùn)行壓力,本系統(tǒng)對(duì)數(shù)據(jù)存儲(chǔ)時(shí),采取了“分單位分表”的存儲(chǔ)策略。即每個(gè)單位的門(mén)類表都是獨(dú)立的、私有的,這樣在查詢時(shí),可以在一定程度上保證數(shù)據(jù)查詢的效率,提高系統(tǒng)運(yùn)行的速度。
由于檔案系統(tǒng)原文上傳量巨大,為了解決海量原文存儲(chǔ)的問(wèn)題,本系統(tǒng)采用了“原文服務(wù)”的方式,對(duì)原文存儲(chǔ)進(jìn)行動(dòng)態(tài)的擴(kuò)展。
“原文服務(wù)”支持“文件系統(tǒng)”和“WebDAV”兩種模式。系統(tǒng)可以無(wú)限制的添加任意多個(gè)原文服務(wù),原有的原文存儲(chǔ)到達(dá)極限時(shí),只需為當(dāng)前單位指定一個(gè)新添加的原文服務(wù),即可實(shí)現(xiàn)動(dòng)態(tài)的原文存儲(chǔ)擴(kuò)展。
“文件系統(tǒng)”即是當(dāng)前服務(wù)器所掛載的磁盤(pán)系統(tǒng)中的文件存儲(chǔ)路徑,可以直接進(jìn)行設(shè)置。但此種模式會(huì)受到操作系統(tǒng)管理磁盤(pán)分區(qū)2T的限制。
“WebDAV”采用公開(kāi)的,基于HTTP端口的WebDAV協(xié)議進(jìn)行文件傳輸。WebDAV協(xié)議具有安全、透明、高效的特點(diǎn),并且已經(jīng)成為標(biāo)準(zhǔn)的協(xié)議,被絕大多數(shù)HTTP服務(wù)器支持。本系統(tǒng)中使用開(kāi)源的Apache服務(wù)器作為WebDAV文件服務(wù)器,可以保證系統(tǒng)的安全和穩(wěn)定。
4.4 二次開(kāi)發(fā)問(wèn)題
本系統(tǒng)采用標(biāo)準(zhǔn)的MVC架構(gòu),使用業(yè)界流行的STRUTS、SPRING、HIBERNATE作為基礎(chǔ)的開(kāi)發(fā)平臺(tái),將對(duì)系統(tǒng)的基本元素,如:組織機(jī)構(gòu)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)管理等的操作提取出來(lái),抽象為開(kāi)放的API接口。進(jìn)行二次開(kāi)發(fā)時(shí),程序員只需調(diào)用這些API,即可實(shí)現(xiàn)對(duì)底層基本元素的操作,可以有效的提升開(kāi)發(fā)速度。
系統(tǒng)在設(shè)計(jì)時(shí),充分考慮了功能的擴(kuò)展,在系統(tǒng)功能、門(mén)類功能、業(yè)務(wù)表功能等處均設(shè)置了開(kāi)放的接口,可以根據(jù)用戶不同的需求,快速進(jìn)行相應(yīng)功能的開(kāi)發(fā),并且可以簡(jiǎn)單的進(jìn)行功能的掛接。