



摘" 要: 傳統的實驗室管理系統側重于設備管理,其存在的普遍問題是缺乏信息交互,難以提高科研效率,不利于工作交接。設計構建了一個融合設備管理以及多種科研信息共享途徑的實驗室信息交互平臺。該平臺基于JavaWeb技術開發,其中包含技術交流、文件共享、成果展示、工作交接、個人信息管理、設備管理等模塊,實驗室內部人員除了能在該平臺進行設備管理外,還能便捷地獲取和分享專業領域信息以及進行工作交接。
關鍵詞: 實驗室管理; 信息交互; JavaWeb; 工作交接
中圖分類號:TP311.1" " " " " 文獻標識碼:A" " "文章編號:1006-8228(2023)12-228-04
Laboratory information interaction platform based on JavaWeb
Ying Xiaolan
(FUJIAN E·Hualu Information Technolongy CO.,LTD., Xiamen, Fujian 361003, China)
Abstract: The traditional laboratory management system focuses on equipment management, and the common problem is the lack of information interaction, which is difficult to improve the efficiency of scientific research and is not conducive to work handover. Therefore, a laboratory information interaction platform integrating equipment management and multiple ways of sharing scientific research information is designed and constructed. The platform is developed based on JavaWeb technology and contains modules such as technical exchange, file sharing, achievement display, work handover, personal information management, and equipment management. In addition to equipment management, laboratory staff can also conveniently obtain and share information in professional fields and hand over work on the platform.
Key words: laboratory management; information interaction; JavaWeb; work handover
0 引言
近年來,我國加大對科研項目的支持力度,促進科學技術創新與進步。這種積極的環境激勵了國家大量人才投身科研的領域,而實驗室作為科研重要場所,如何高效利用實驗室資源開展科研工作值得深入研究。
傳統的實驗室管理系統通常是以輔助管理實驗室設備作為主要功能,通過網絡通訊技術對實驗室內部電子實驗設備進行監控維護,這種系統模式只能簡單地滿足設備管理方面的需求,但是缺乏實驗室內部科研信息交互,同時難以應對由于科研項目組人員流動帶來的工作交接問題,無法讓實驗室形成良好的“科研生態”。
本平臺除了繼承傳統實驗室管理系統的設備管理功能以外,還開發出技術交流、文件共享、成果展示、工作交接等功能,能夠很好地解決傳統實驗室系統模式存在的弊端。同時,本平臺以輕量級系統設計思想為主導,結合現今互聯網比較流行的技術棧開發,使得平臺不僅性能良好,而且便于維護及擴展。
1 系統設計
1.1 模塊劃分
本平臺功能需求包括:完整的用戶管理體系、便捷的信息獲取以及分享途徑、全面的設備管理模式、高效的工作交接方式。根據上述需求,本平臺細分為七大模塊,分別是注冊登錄模塊、技術交流模塊、文件共享模塊、成果展示模塊、工作交接模塊、設備管理模塊以及個人中心模塊,其中模塊結構以及各模塊下的子模塊如圖1所示。
1.2 技術架構
相對于傳統的前后端一體式Web項目開發模式,本平臺采用B/S(瀏覽器/服務端)網絡架構以及MVC(模型-視圖-控制器)模式進行分離式開發[1],把整個項目分為服務端、客戶端以及數據庫三個部分,不同部分的開發人員根據不同需求獨立開發,階段性任務完成后在同一局域網內進行聯調。
⑴ 服務端
服務端主要提供接口訪問以及數據處理支撐,以Springboot框架[2]為底層框架,在此基礎上采用面向切面編程的思想進行開發,把重復頻率較高的代碼塊抽取成為單獨的方法,并以注解的形式添加到項目中,力求模塊之間實現低耦合性、高擴展性。
⑵ 客戶端
客戶端主要負責以頁面的形式向用戶呈現Web資源,技術上以Vue框架、ElementUI框架和CSS技術為主[3]。采用模塊化的開發思想將整個頁面作為一個容器,容器內部再細分為更小的模塊,不同的模塊可以做不同的頁面渲染,模塊之間互不干擾,當頁面需要切換時,實際上只是切換了部分模塊,無需整體改變,以此來優化平臺性能,另外,訪問服務端接口時將訪問數據進行序列化處理,提高數據傳輸速率。
⑶ 數據庫
本平臺使用關系型數據庫MySQL作為底層數據庫,以數據表的形式存儲結構化數據。根據各模塊之間的關系,本平臺將數據表劃分為用戶信息表群和設備信息表群,表群結構如圖2所示。其中用戶信息表群以用戶個人信息表為核心,設備表群以設備信息表為核心,與兩大核心表相關的所有數據表均以對應核心表主鍵id作為外鍵約束,以保證數據的一致性和完整性。
2 技術路線
本平臺定位為一個結合信息交互以及設備管理的多功能平臺,內部包含多個模塊,其中用戶信息與多個模塊均存在數據耦合,因此需要建立健全可靠的用戶體系,保證數據信息安全性。對于信息交互相關的模塊,則涉及文件流處理技術,為了提高文件傳輸的速度,本平臺采用了分片傳輸技術。另外,對于設備管理模塊,本平臺運用物聯網的方式進行搭建,并采用無線通訊技術來進行數據傳輸,以達到監控實驗設備重要數據的目的。
2.1 用戶權限體系
本平臺提供實驗室內部成員使用,不對外部人員開放,因此采用管理員分配用戶模式進行賬號分配,把平臺用戶劃分為超級管理員、管理員和普通用戶三個角色等級,如圖3所示。超級管理員擁有最高權限,可以分配管理員和普通用戶賬號,其賬號由平臺開發者統一初始化。而管理員賬號可以分配普通用戶賬號以及執行部分平臺維護事務。普通用戶是平臺最低權限,僅可使用與個人賬號相關的基本功能。
2.2 信息安全管控
作為一個科研平臺,其內部會包含很多實驗室科研數據,這些數據是科研工作的主要載體,為了防止網絡黑客以非法手段對實驗室數據進行竊取,本平臺使用Jwt驗證工具[4]進行接口信息攔截校驗。在用戶登錄成功時,Jwt會通過加密算法對用戶登錄信息進行加密處理并生成Token令牌,該令牌會以接口數據的形式返回前端,之后用戶在進行任何平臺操作時,前端都會在接口請求頭中攜帶該令牌訪問后端,而后端通過對令牌解密檢驗之后才會返回用戶對應請求數據,如果校驗失敗則會由后端攔截器進行攔截并強制要求用戶重新登錄,通過這種方式可以有效防止網絡黑客的訪問攻擊。
2.3 技術交流
為了提高實驗室對于專業領域信息的利用率,本平臺設計了一個小型技術交流板塊,其中包含學術熱點和知識拓展兩個分支模塊。這兩個分支模塊設計模式基本一致,均支持用戶以發帖的方式發表文案,并在文案底部添加了評論功能,文案作者以及閱讀者可以在此處進行交流,評論內容所有成員可見。其中發帖功能中使用富文本編輯器作為文本編輯方式,內置多種文本標記方式以及外部內容嵌入方式,能提高文案可讀性。
2.4 工作交接
在日??蒲谢顒又?,項目組新舊成員工作交接時經常會出現資料不全的情況,從而導致下一步工作的進展緩慢。為了改善這一現狀,本平臺設計了一個工作交接模塊,設計思路如圖4所示。當有舊成員離開項目組時,超級管理員可通過平臺內部向該成員發送一個工作交接文檔,并可為文檔設定多個門類及完成期限,待該成員完成所有交接事項后,該文檔會返回至超級管理員,并由超級管理員進行審核反饋,直至最終文檔確定,該文檔的具體內容會保存在服務器中,而已完成的交接文檔記錄則會顯示在超級管理員個人頁面中。同樣當有新成員加入項目組時,超級管理員也可以將已有的交接文檔分配至該成員賬號中,并設定接任完成期限,待接任工作全部完成后,接任記錄也會顯示到超級管理員個人頁面中。通過此流程,超級管理員可以主動地向目標成員分配交接任務,項目新舊成員不需要存在時空交集也能順利完成交接,這樣子能夠有效減少交接漏洞,使得整個交接流程更加有序化、平滑化。
2.5 文件共享
目前大部分社交軟件都實現了文件共享功能,但是對于實驗室而言,通過第三方平臺作為文件存儲庫顯然會有數據安全性問題。因此,本平臺設計了一個文件傳輸模塊,使用實驗室內部服務器作為文件存儲倉庫來保證文件存儲的安全性。另外,通過使用文件分片傳輸技術[5],能夠提高傳輸速率,特別是對于占用較大存儲空間的文件,傳輸效果尤為顯著。
2.6 設備管理
為了便于進行實驗室設備遠程管理,本平臺以物聯網的形式搭建設備管理模塊,采用Netty網絡框架編寫該部分后端代碼,其通訊方式設置為Tcp無線通訊方式[6],主要負責采集、記錄設備運行數據和實驗數據,部分數據可通過Echart組件[7]實現準實時圖形化展示。另外,超級管理員可根據實際需求設置實驗設備數據異常報警類別及信息,當數據觸發報警閾值時,本平臺會通過電話或者短信形式通知實驗室成員以應對緊急情況。
3 測試
3.1 測試方法
本平臺測試計劃側重于功能邏輯實現以及數據準確性,測試過程分為三輪,第一輪使用Jmeter(壓力測試工具)編寫測試用例,對各模塊獨立測試,模擬實際場景中接口調用順序,線程數設置為20,持續時間各為1h。當接口出現問題時,使用Postman(接口調試工具)輔助調試,直至各接口都通過測試為止。在第二輪進行整體性測試,編寫涉及多模塊調用的測試腳本,充分模擬用戶操作行為,線程數設置為20,持續時間為2h。最后一輪測試是在現網環境中運行,邀請20位測試人員在同一時段進行真機實驗,測試人員可隨意使用平臺功能,時長為0.5h,并在實驗結束后以調查表的形式采集測試用戶反饋意見。
3.2 測試結果
經過前兩輪測試以及優化調整后,第三輪測試過程中平臺基本運行正常,沒有出現功能邏輯錯誤、數據紊亂或者平臺卡頓情況,80%測試成員反饋使用情況為良好,20%測試成員反饋使用情況為中等。部分測試人員提出了優化建議,總結如下:①提高UI組件協調性以及美觀性;②增加技術交流模塊中評論功能的樣式;③添加多樣化客戶端形式。
4 結束語
本平臺在傳統的實驗室管理平臺基礎上進行了改進,摒棄了單純以設備管理為核心的設計思路,將設備管理以及信息交互結合在一起,以提高科研效率為目的。在功能設計上,添加了技術交流、工作交接、文件傳輸等模塊,囊括了實驗室科研生活的大部分。另外,本平臺還設計了可靠的安全機制,對所有數據信息進行訪問校驗以保障實驗室信息的安全。經過整體測試后,本平臺已經能夠正常運行,日后會根據測試用戶優化意見逐步改善。希望本文的設計思路能夠為同行提供一些參考與借鑒。
參考文獻(References):
[1] 孟祥雙.前后端分離式WEB應用開發研究[J].電子元器件與
信息技術,2019,3(6):40-43.
[2] 王志亮,紀松波.基于SpringBoot的Web前端與數據庫的
接口設計[J].工業控制計算機,2023,36(3):51-53.
[3] 康珊珊,劉莉,田凌,等.基于前端框架Vue.js的實驗室管理系
統開發[J].實驗室研究與探索,2023,42(3):281-284,318.
[4] Ahmet Bucko;Kamer Vishi;Bujar Krasniqi;Blerim Rexha.
Enhancing JWT Authentication and Authorization in Web Applications Based on User Behavior History[J].Computers,2023,Vol.12(78): 78.
[5] 周煜瑩,崔巖松,王丹志,等. 基于自適應分片的大文件快速
上傳[J].計算機系統應用,2022,31(7):143-148.
[6] Z. Yanhong, C. Yiping and Z. Guanhu, \"Design and
implementation of high-performance instant messaging system and personalized aggregate content service,\" 2022 IEEE Asia-Pacific Conference on Image Processing, Electronics and Computers (IPEC), Dalian, China,2022:84-89.
[7] J. Xie, Z. Yang, Z. Jun, Z. Xi and Y. Tang, \"Design and
Implementation of Epidemic Big Data Visualization Platform Based on Vue + ECharts,\" 2023 IEEE 2nd International Conference on Electrical Engineering, Big Data and Algorithms (EEBDA), Changchun, China,2023:1347-1352.