




摘 要:針對數據源對接不足、數據調取效率遲滯等問題,設計并實現了檢查業務數據應用系統。該系統以數字化改革為導向,對接一體化智能化公共數據平臺,基于SSM框架并采用較流行的前后端分離技術實現,具有數據配置、數據檢索及系統管理等功能,為檢察院提供可靠的數據可視化管理,并快速準確地獲取辦件的相關信息。經測試,該系統運行穩定,數據檢索響應快,時間小于1秒,用戶體驗良好;通過匯聚行政執法數據及其他公共數據,系統打通了數字資源流通的壁壘,降低了跨部門工作協調的難度,提高了檢察院的辦件效率。
關鍵詞:數字化改革;數據檢索;SSM框架;應用系統
中圖分類號:TP311 文獻標識碼:A 文章編號:2096-4706(2025)02-0052-06
Development of Prosecution Business Data Application System Based on SSM Framework
ZHAO Jingjing
(Artificial Intelligence College, Zhejiang Industry and Trade Vocational College, Wenzhou 325003, China)
Abstract: In response to issues such as insufficient data source integration and delayed data retrieval efficiency, a prosecutorial business data application system is designed and implemented. The system is led by digital reform, connected to an integrated intelligent public data platform, based on the SSM framework and implemented using popular front-end and back-end separation technology. It has functions such as data configuration, data retrieval, and system management, providing reliable data visualization management for the procuratorate and quickly and accurately obtaining relevant information of the cases. After testing, the system runs stably, responds quickly to data retrieval, takes less than 1 second, and has a good user experience. By aggregating administrative law enforcement data and other public data, the barriers to the circulation of digital resources have been broken down, reducing the difficulty of cross departmental work coordination and improving the efficiency of the procuratorate's handling of cases.
Keywords: digital reform; data retrieval; SSM framework; application system
DOI:10.19850/j.cnki.2096-4706.2025.02.009
收稿日期:2024-07-31
基金項目:2022年度高校國內訪問工程師“校企合作項目”(FG2022267)
0 引 言
近年來信息技術產業有了長足發展,云計算、物聯網、大數據等技術的成熟極大地提高了軟件系統開發和應用水平[1],為信息化建設提供了可靠的軟硬件環境條件,有力地保障了信息化建設的成果。數字改革可以打通信息傳遞通路,有效提高政府服務效率,數字賦能推動社會發展并不斷提高社會治理水平,但是隨著數字化的不推進,導致各地各部門都沉淀積累了海量數據資源,而這些資源之間流通還存在著一定的壁壘[2],如何將各類資源進行整合并進行優化管理,實現資源數字化、網絡化與智能化,并提供高質量服務,是該系統解決的問題。
檢查業務數據應用系統以深入強化某區人民檢察院智慧化、數字化數據檢索平臺,以破解問題為工作導向,對接“一體化數字資源服務系統”,集成一體化智能化公共數據平臺某區分平臺數據,構建集數據檢索、案件辦理等為一體的數字化的數據應用系統。本系統匯聚了行政執法數據及其他公共數據,提供了可靠的數據的可視化管理,實現了對案件人、案件企業等各類案件數據進行檢索,促進了不同部門間的數據共享,降低了工作協調難度,提高了工作效率。
1 關鍵技術介紹
1.1 SSM框架
SSM框架由Spring、Spring MVC和MyBatis三個框架整合而成,是目前JavaEE企業級應用開發中主流的輕量級框架組合。
Spring是一個輕量級的Java開發應用框架,其中核心是控制反轉(IoC)和面向切面編程(AOP),利用容器對對象進行高效管理,實現對代碼的解耦[3]。該框架為開發提供了集成環境,同時還提供了數據訪問對象(DAO)支持、事務管理、EJB集成、遠程方法調用(RMI)、定時任務等豐富的功能,從而簡化了應用開發的流程,使工程師有更多的精力投入到業務上,提升開發效率。Spring MVC為Spring框架的一部分,與類級別攔截的Struts2框架不同的是,Spring MVC是方法的攔截,它圍繞DispatcherServlet前端控制器進行設計[4],攔截用戶請求后再分發給不同的處理器來處理,支持Restful風格、國際化,以及數據驗證、攔截器等功能,一般在開發過程中,會采用基于注解的Controller聲明方式進行開發。而MyBatis是一個持久層框架,它通過提供DAO層,將業務邏輯與數據訪問邏輯分離,讓系統設計更清晰、維護更容易。MyBatis在實現方法上,提供了XML和注解兩種方式來實現ORM(Object Relational Mapping)關系映射,使SQL語句從程序中解耦,提高可維護性。而MyBatis-plus作為MyBatis的增強工具,擴展了MyBatis功能,提供了CURD的操作方法及分頁查詢等功能,在一定程度上減少了手寫重復性代碼的時間和工作量,配合MyBatis-plus開發,效率更高。
1.2 前端開發技術
前期的前端開發主要由Html和Css完成靜態網頁的設計與制作,由JavaScript進行頁面的簡單交互,隨著交互需求的增加,異步交互技術Ajax應運而生,它在網頁不更新的情況下與服務器進行數據交互,使用戶體驗更加豐富[5]。前端技術在不斷演進與更新中,Angular.js、React.js及Vue.js等新的技術框架相繼出現,為前端開發帶來了獨特的解決方案和生態系統。Vue作為前端最流行的框架之一,利用數組驅動與組件化的方式,簡化了開發過程,在前端開發過程中得到廣泛的應用。Vue提供了響應式數據綁定、組件系統和虛擬DOM,同時支持服務器端渲染等功能,使用MVVM(Model-View-ViewModel)的設計模式,使用視圖與數據之間保持同步,當數據發生變化時,視圖會自動更新;反之,當用戶與視圖進行交互時,數據也會相應地更新[6-7]。
2 系統總體設計
2.1 系統框架設計
系統總體框架使用網絡設備將內外數據隔離,業務系統通過對接一體化智能化公共數據平臺某區分平臺完成數據對接,同時將相關的各類數據進行匯聚,形成資源協同、數據共享的檢查業務數據應用系統,進而為檢察院提供高效的服務。
根據系統的功能需求分析以及對平臺的擴展性和可配置性的要求,項目采用SpringBoot+Vue的前后端分離技術,技術框架設計為4層:顯示及控制層、業務層、數據訪問層、數據層。系統技術框架如圖1所示。
具體介紹如下:
1)顯示及控制層主要采用MVC的思想,由Spring MVC的Controller層接收用戶請求并調用Service層服務后響應給前端,前端利用Vue技術并結合Element-UI框架完成前端頁面動態顯示,同時利用Axios請求實現業務、數據可視化配置和展示效果。為方便管理數據源資源使用情況,本層還集成了Druid Monitor監控工具,
2)業務層主要負責業務邏輯的具體實現,即Service層[8]。通過調用數據訪問層的接口,獲取業務數據并進行業務邏輯處理,如權限驗證、日志處理、檢索處理等,同時為控制層提供業務接口。
3)數據訪問層主要負責數據庫的訪問,數據源使用Druid進行訪問和管理,利用MyBatis框架實現數據庫的各種訪問操作,配合MyBatis-plus快速完成數據庫的DML操作、實體類代碼生成、分頁等功能,同時為業務層提供數據訪問接口。
4)數據層是則存放系統中所需要的各類數據,它屬于系統的基礎部分。數據包含系統本身數據和遠程數據兩部分。系統數據又由本地數據、緩存數據及文件數據組成,遠程數據來源于一體化智能化公共數據平臺,經訪問后獲取。本地數據為結構化數據,存儲于MySQL中,包括系統管理信息、業務數據、配置信息等;文件數據由用戶進行上傳用于批量查詢或導出使用,存儲于本地文件系統中;部分業務數據由Redis緩存存儲,主要用于提高查詢效率。
2.2 功能介紹
檢查業務數據應用系統整合一體化智能化公共數據平臺公共數據資源,充分考慮目前相關人員信息采集使用過程中存在的問題,以減少數據管理與維護帶來的壓力、快速識別相關關聯信息,從而實現業務的信息智能化。根據業務需求,平臺主要提供數據檢索、數據接口配置和系統管理三個功能模塊,如圖2所示。數據檢索功能模塊主要通過和大數據平臺的對接,完成跨平臺的檢索。數據來源單位包括住建局、市場監督局、數據管理中心等不同單位,檢索包括個人檢索業務與企業檢索業務,檢索過程中匹配數據來源與檢索類型進行快速檢索,檢索的數據以列表的形式顯示于頁面,點擊詳情后可查看該案件的詳情信息,并提供CSV、PDF等形式的數據報表導出功能。數據配置功能模塊主要包括數據接口配置及日志操作兩部分,數據接口配置是對公共平臺接口地址和相關接口交互參數進行配置,以完成與公共平臺信息的對接,為數據檢索提供保障,日志操作則為系統的安全性提供全面監控與分析。系統管理功能模塊包括對系統進行用戶管理、角色管理、菜單管理、權限管理等功能。
3 系統功能實現
為減少后端服務器的壓力,本系統使用前后端分離技術實現[9],數據存儲于MySQL數據庫系統中。后臺提供數據并提供API接口,前端獲取數據后負責組裝、渲染,最終呈現給用戶。前后端通過接口進行數據交互時,使用JSON格式,定義統一返回的數據格式,格式包含data、code及message三個成員,其中data用來存儲實際返回的數據,可以是對象、集合等類型,定義時使用范型表示;code表示本次請求是否響應成功,例如200表示響應成功,前端可根據此響應碼判斷其處理過程;message即消息,用于接口調用時后端告知前端的必要信息。
3.1 數據配置功能
對接一體化智能化公共數據平臺某區分平臺,實現對各類案件數據進行檢索,針對案件人、案件企業等信息查詢,數據來源、領域不同,則查詢的條件不同。如對每一項業務的查詢條件進行逐個處理形成靜態表單,則開發效率低下,且當檢索功能增加時,系統不易擴展。根據查詢業務需要,數據接口配置功能將查詢條件以key-value形式建立模型,存儲于數據庫中,前端根據數據庫中的模型,拿到表單的相關數據后,遍歷給表單賦值以生成動態表單。數據接口配置的數據庫表設計如圖3所示。
為保證數據的安全性、合規性和透明度,系統使用操作日志記錄用戶的操作行為及操作結果。日志主要記錄哪個用戶在什么時間做了什么事情,通過日志記錄可以幫助部門進行行為跟蹤,保證操作行為符合要求,當系統出問題時,也可能通過日志幫助快速定位源頭。日志記錄表設計如圖4所示。
3.2 數據檢索功能
數據檢索功能是一個全自動化的功能,可減少人工查詢的時間成本和勞動成本,數據來源于公共數據資源平臺中的數據,可快速、準確地獲取辦件人的相關信息,以推動檢查業務工作、輔助辦案人決策及提升相應的業務指導等功能,從而提升司法監督的效率和精準度,發揮數據價值。
本功能的實現主要是通過API請求公共數據平臺以獲得相應的數據,在實現時定義一個公共查詢服務DataService,用于查詢功能的統一調用。在請求公共平臺數據時,需要access_token令牌,而令牌的有效期為1 800秒,為減輕平臺服務器壓力,在令牌失效前不進行重復請求獲取令牌。由于數據來源于住建委、大數據中心等不同部門,故在對接公共數據平臺時其攜帶的請求信息也有所不相同,此處可將請求信息作為服務的參數處理。在API請求過程中,使用Spring提供的HTTP請求工具RestTemplate,此工具中ResOperations接口定義了RESTful的基本操作,能滿足GET、POST、PUT等請求方式。在使用RestTemplate 進行請求時,需要進行配置,其配置過程核心代碼如下:
@Bean
public HttpClient httpClient() {
Registrylt;ConnectionSocketFactorygt; registry = RegistryBuilder.lt;ConnectionSocketFactorygt;create()
.register(\"http\", PlainConnectionSocketFactory.getSocketFactory())
.register(\"https\", SSLConnectionSocketFactory.getSocketFactory())
.build();
PoolingHttpClientConnectionManager poolingHttpClientConnectionManager = new PoolingHttpClientConnectionManager(registry);
//設置整個連接池最大連接數 需求200
poolingHttpClientConnectionManager .setMaxTotal(200);
//路由是對maxTotal的細分
poolingHttpClientConnectionManager .setDefaultMaxPerRoute(100);
RequestConfig reqConfig = RequestConfig.custom()
.setSocketTimeout(10000) //設置未收到數據時間(經過測試)
.setConnectTimeout(10000)//設置連接超時時間
.setConnectionRequestTimeout(1000)//從連接池中獲取連接的超時時間
.build();
return HttpClientBuilder
.create()
.setConnectionReuseStrategy(new ConnectionReuseStrategy() {
@Override
public boolean keepAlive(HttpResponse response, HttpContext context) {
return 1;
}
})
.setDefaultRequestConfig(reqConfig )
.setConnectionManager(poolingHttpClientConnectionManager )
.build();
}
在檢索數據時,可輸入查詢條件進行單條檢索,也可通過導入模板進行批量檢索,檢索結果經解析處理后在頁面中以列表形式展示,同時對查詢結果提供導出功能,導出格式為Excel格式。由于數據源本身在公共平臺,可能會隨時發生變化,故檢索到的數據僅用于當前業務,不再保存在本地數據庫。數據檢索頁面如圖5所示。
3.3 系統管理功能
系統管理功能為系統的基本功能,提供經典的用戶、權限等管理功能,在系統登錄時使用統一身份認證,業務應用則基于JWT認證完成,用戶需提供正確的JWT令牌才能通過認證。用戶登錄后,根據用戶角色與權限的分配,前端頁面動態加載并顯示用戶的菜單[10]。角色權限分配界面如圖6所示,利用權限設計提高了系統的靈活性,滿足個性化需求。
4 系統部署與測試
系統硬件測試環境為Centos 7操作系統、8 GB內存、1 TB硬盤,軟件測試環境包括JDK 1.8、Nginx、Docke、MySQL 5.8 等。系統使用前后端分離技術進行開發,在系統部署測試時,考慮到應用程序的一致性、擴展性等特點,選擇使用Docker容器化部署,以隔離環境并簡化部署流程。部署Spring Boot后臺服務時,需要對應的容器中準備好Java的開發環境,后臺服務分模塊方式進行開發并打包,啟動時需要注意它們的順序,數據庫服務則需要單獨部署。部署前端Vue項目時,使用Nginx作為Web服務器,服務前端靜態頁面。為方便管理,使用docker-compose編排來進行定義和運行多個容器。
所有服務均正確啟動后,根據用戶的應用要求,進行查詢、配置和權限分配等功能與性能方面地的測試。經測試,人機交互界面友好,輸入、輸出操作方便,數據檢索簡單快捷,能滿足100用戶同時在線,對于數據檢索查詢可以做到即時響應,其檢索業務數據響應時間小于1秒,報表響應時間小于3秒,符合用戶需求。
5 結 論
基于SSM框架的檢查業務數據應用系統,使用前后端分離技術實現,利用異步交互技術將前端頁面與后臺服務有效地進行解耦,減少服務器壓力;通過采集配置功能,對接一體化智能化公共平臺,為數據檢索提供了保障;而操作日志的記錄,則為系統的安全性提供了全面監控與分析;檢索功能可快速、準確地獲取辦件人的相關信息,提高了檢察院的辦件效率。本項目以數字化技術為基礎,將數字要素貫穿于檢查業務,全面推進了“數字檢務”建設,同時推進了數字產業發展。
參考文獻:
[1] 張苗苗.新一代信息技術環境下科技管理數據服務模式創新研究 [D].西安:西安電子科技大學,2018.
[2] 楊旎.整體性治理理論視角下“互聯網+”行政審批的優化 [J].電子政務,2017(10):38-45.
[3] 王建國,張爭,湯來鋒,等.基于SSM框架的學生信息管理系統的設計與實現 [J].現代信息科技,2024,8(7):30-33.
[4] 趙炯,司圣杰,周奇才,等.通用信息獲取系統設計與實現 [J].起重運輸機械,2020(16):89-97.
[5] 劉軍.基于AJAX技術和RSS技術的網絡考試系統設計 [J].長江信息通信,2023,36(5):179-181.
[6] 徐鵬濤.基于Vue的前端開發框架的設計與實現 [D].濟南:山東大學,2020.
[7] 王偉,丁佳浩,葉紅陽,等.基于前后端分離架構的某企業檔案管理系統設計與實現 [J].現代信息科技,2024,8(6):11-14.
[8] 王志亮,紀松波.基于SpringBoot的Web前端與數據庫的接口設計 [J].工業控制計算機,2023,36(3):51-53.
[9] 趙靜靜,金慧峰,李霄.基于MinIO存儲的綜合實踐管理平臺開發 [J].軟件,2022,43(10):55-59.
[10] 孫全玲,洪賜福,嚴輝.基于Java安全類庫Spring Security的信息系統安全功能實現 [J].工業控制計算機,2024,37(5):104-105+108.
作者簡介:趙靜靜(1985—),女,漢族,河南焦作人,講師,碩士,研究方向:軟件技術。