中圖分類號:TP311.1 文獻標志碼:A 文章編號:2095-2945(2025)18-0122-04
Abstract:Basedontheexperienceof informationsystemconstruction,whetheritiscustomizedreportdevelopmentorthe procurementofmaturedataanalysissoftware,itcannotbalancetherelationshipbetwencost,technologyscalabilityndfuture demandwell.Tosolve theaboveproblems,adataanalysissystem basedon Spring CloudandAnt DesignChartshasbeen designedandimplemented,whichenablesuserstoquicklyandeficientlydevelopdataanalysisreportswhilealsoachieving advancedfunctionssuchasautomaticreport generation,reportrecommendation,and intellgent visualizationinthe future.
Keywords:Spring Cloud;Ant Design Charts; data analysis;interface;interactive
隨著我國數字經濟進入快速發(fā)展階段以及數字經濟時代的來臨,數據分析系統已經成為了企業(yè)發(fā)展過程中不可或缺的軟件系統。而圖表作為數據分析系統中首要且必要的工具逐漸成為系統中最為重要和復雜的部分。本文結合企業(yè)信息化系統的建設經驗介紹了一種通過在頁面上配置圖表參數完成圖表開發(fā)和報表布局的數據分析系統的實現方式。
1背景和定義
1.1背景
在企業(yè)信息化過程中數據分析系統一般采用定制化開發(fā)或采購數據分析軟件的方式實現。定制化開發(fā)的方式雖然既能解決軟件功能問題,也能滿足個性化需求,但其開發(fā)費用高昂、時間周期漫長、溝通成本巨大、維護成本高,很難適用于IT人力資源少的企業(yè);采購成熟的數據分析軟件是企業(yè)常用的數據分析系統實施方案,成熟數據分析軟件的豐富自有組件和集成功能簡化了應用程序的開發(fā)流程,其以可視化開發(fā)和模塊化組件的特點,成為加速應用開發(fā)、降低開發(fā)成本、提高開發(fā)靈活性的利器3。但成熟的軟件系統本身的功能限制了數據分析系統的上限,在系統運營過程中軟件系統的升級和系統兼容性的問題或帶來不可預見的問題。并且隨著技術和數據的積累,無法在成熟軟件系統上實現報表的自動生成、報表推薦、智能可視化等功能?;谝陨蠁栴}設計并實現了以SpringCloud和AntDesignChart為基礎的交互式數據分析系統。
1.2 定義
1.2.1 Spring Cloud
SpringCloud是一種成熟的、廣泛應用的微服務架構落地的一套技術棧和應用架構,它是基于 Spring框架基礎上推出的一個全新的框架,旨在讓開發(fā)人員能輕松地構建一個可獨立運行的、生產級別的應用系統[4。基于SpringBoot內部的自動化配置功能,開發(fā)人員可輕松、方便、快捷地創(chuàng)建一個WEB應用。
1.2.2 交互式圖表
交互式圖表是一種通過增加交互效果來增強信息展示和數據分析的工具。它不僅展示數據,還充許用戶通過鼠標操作進行交互,如通過懸停、點擊、框選、單擊、雙擊等操作顯示圖表詳細數據或彈出二級頁面,從而獲取更深層次的數據分析和信息。
1.2.3 數據分析
通過可視化技術,將復雜的數據和分析結果以直觀的圖表形式展示,輔助決策。通過折線圖、柱狀圖、餅圖等多種圖表形式,展示生產數據的變化趨勢和分布情況。
1.2.4 圖表元數據
元數據是描述數據的數據,它通過描述信息資源或數據本身的特征和屬性,來規(guī)定數字化信息的組織。顧名思義,圖表元數據是定義圖表的類型、屬性、數據格式等的數據,數據分析系統根據圖表的元數據信息完成圖表的渲染。
2 實施方案
數據分析系統主要由接口管理模塊、數據定義模塊、圖表元數據模塊、圖表可視化配置模塊和頁面布局模塊構成。其中接口管理模塊和數據定義模塊為系統提供數據服務,圖表元數據模塊和圖表可視化配置模塊用于將數據渲染為單個圖表,頁面布局模塊采用行列格柵的方式將多個圖表進行排版,并形成以“卡片”為基礎的報表頁面。
2.1 接口模塊
接口模塊的主要目的是采用接口編碼的方式統一管理各類接口并根據接口編碼統一實現接口端對端的加/解密工作、權限認證工作并記錄接口執(zhí)行日志。同時為開發(fā)者屏蔽SpringCloud框架中有關網關、消費者、Controller、Filter等概念,使開發(fā)人員可以專注于接口業(yè)務邏輯的開發(fā)。
2.1.1 接口編碼
接口編碼(圖1)采用15位有意義碼,是數據接口的唯一標識。接口編碼以“BIP\"為開頭表示業(yè)務接口協議(BusinessInterfaceProtocol),其余表示接口的類型、系統標識、模塊標、是否加密、是否鑒權等。
2.1.2 功能實現
接口模塊主要采用注解和SpringBean的方式將接口的實現邏輯托管給Spring框架處理,該模塊主要由接口定義和接口調用兩部分構成。其中接口定義由UBIP注解、IUBIPExecuteService接口、RequestService 抽象類和各個接口實現類構成,主要用于實現接口的業(yè)務邏輯;接口調用主要由UBIPService接口、UBIPServiceImpl 類、UBIPProcessor 類 和 UBIPConfig類構成,用于實現通過接口編碼調用接口的業(yè)務類。類之間的調用關系如圖2所示。
UBIP為注解定義了接口編碼并標記了該接口編碼對應的接口執(zhí)行類,IUBIPExecuteService接口定義了接口的必要操作,而RequestService 抽象類實現了該接口并定義了接口的請求報文頭和報文體,RequestService類是一個抽象模板類,其中“T\"表示報文體。用戶在實際實現接口時需繼承該類并使用實際的參數類替換“T”,樣例代碼如圖3所示。
句存儲到數據庫中并使用特定的接口調用執(zhí)行,該模塊主要為了方便用戶通過配置SQL語句的方式使用特定接口查詢數據。
該模塊由錄入和執(zhí)行兩部分構成,錄人部分用于錄入預定義的SQL語句并返回SQL編碼,屬于簡單的增刪查改邏輯,在具體實現時注意驗證SQL語句的語法是否正確并繞過系統的SQL注人檢測即可。執(zhí)行部分通過調用特定接口,并通過接口參數中的SQL編碼從數據庫中查詢要執(zhí)行的SQL語句,并將預定義的SQL語句和接口中的查詢參數解析成最終要執(zhí)行的SQL語句后執(zhí)行。執(zhí)行部分的關鍵邏輯不在于調用SQL執(zhí)行,而在于對于特殊SQL語法的解析和參數替換以及驗證參數中的SQL注入的問題。
UBIPProcessor類用于在應用啟動時識別接口編碼并將接口編碼和SpringBean存儲到UBIPConfig類中,以便在\"UBIPServiceImpl\"中調用;UBIPServiceImpl類從應用上下文(ApplicationContext)通過\"UBIPCon-fig”中接口編碼和SpringBean的對應關系實現了接口按照接口編碼分發(fā)執(zhí)行的具體邏輯。
2.2 數據定義
數據定義模塊的主要功能是將預定義的SQL語
2.3 圖表可視化配置
圖表可視化配置模塊的主要功能是使用戶可以在前端頁面上使用所見即所得的方式完成單個圖表的開發(fā)工作。該模塊將通過讀取圖表元數據將圖表參數、數據接口或SQL編碼、圖表事件響應頁面關聯在一起形成一個帶有交互功能的數據圖表。其主要操作頁面如圖4所示。
在圖4中是一個“環(huán)圖”的配置頁面,“圖表名稱”在圖表中以標題的方式呈現;系統根據“圖表類型\"字段加載圖表的元數據并渲染,同時根據該字段加載構成圖表的特殊參數;“查詢標識”字段標識圖表數據的來源,用戶也可以在該字段配置以“BIP開頭的接口編碼”;“查詢參數\"字段以JSON格式的數據表示查詢接口或查詢標識的默認參數;“元素選擇事件-圖表\"表示單擊圖表中的頁面元素可彈出另外一個圖表頁面;“元素選擇事件-表格\"表示單擊圖表中的頁面元素可彈出一個二維表格頁面;若“元素選擇事件-圖表\"和“元素選擇事件-表格”都有值,系統會將圖表頁面和二維表格合成一個頁面;參數轉換是在元素選擇事件中將圖表數據和頁面請求參數轉換為響應頁面參數的數據映射關系。
完成圖表的配置后,系統通過\"”組件、“ ”組件、“”組件和一系列的圖表組件結合圖表元數據渲染圖表。其中“ \"組件使用圖表“id”通過接口查詢圖表的參數信息,并將參數信息傳遞給“\"組件,該組件通過參數中的“圖表類型\"字段將參數渲染成不同樣式的圖表,“”組件是圖表事件的響應頁面,它接收圖表頁面的參數信息并彈出或滑出二級頁面用于數據的下鉆或關聯分析。以環(huán)圖為例該圖表的主要代碼如圖5所示,該部分代碼實現了圖表配置數據的解析、圖表元素選擇事件的參數解析和響應圖表元素選擇事件。
2.4 頁面布局
頁面布局模塊用于將多個圖表通過行列格柵的方式形成卡片式的報表頁面。用戶在前端通過在頁面中增加行、行中拆分列、列再拆分行或添加圖表的方式,最終形成以報表頁面為根、行列為枝、圖表為葉的樹形數據結構,并通過“ \"組件將報表頁面的樹形數據結構渲染成報表頁面,數據結構如圖6所示。
頁面布局的主要實現邏輯在“ ”組件,該組件將頁面的行、列和圖表等頁面組件均作為頁面元素處理并通過遞歸調用的方式將檢索到的樹形數據結構按照數據類型做不同的渲染。圖表渲染為“ ”組件構成圖表,行和列繼續(xù)遞歸渲染為“”并向下執(zhí)行。
3結束語
雖然市面上有很多成熟的數據分析工具,但是對于建設信息化系統來說,采購成熟的軟件能夠滿足當前數據分析的需求,但是隨著技術的發(fā)展和人工智能技術的成熟,用戶很難在數據分析工具的基礎上建設圖表檢索、自動生成、智能推薦和智能可視化等高階報表功能。本文通過對AntDesignChart的研究設計并實現了通過配置SQL或查詢接口的方式開發(fā)圖表的系統,該系統能夠簡化圖表開發(fā)的工作、降低圖表開發(fā)的門檻、提高圖表開發(fā)的效率、降低系統實施成本;并且這種自建圖表系統的方式可以使用戶有能力在該系統的基礎上實現更深層次的數據分析工作。
參考文獻:
[1]蘇偉,國建勛,馮寬.低代碼開發(fā)平臺發(fā)展現狀及標準化研究[J].信息技術與標準化,2024(Z1):17-21.
[2]李雙.低代碼平臺在企業(yè)數字化轉型中的實踐探索和啟示[J].互聯網周刊,2024(3):46-48.
[3]汪梅.低代碼平臺在財務數智化轉型中的應用探究[J].老字號品牌營銷,2024(14):42-44.
[4]劉汀.基于SpringBoot的微服務體系在企業(yè)信息管理系統中的應用[J].信息技術與信息化,2023(5):23-26.
[5]李鵬程,盧濤.基于微服務的企業(yè)綜合管理信息系統(MIS)設計與實現[J].辦公自動化,2024,29(10):18-21.
[6]張麗偉.基于大數據分析的智能平臺在油氣生產中的應用與優(yōu)化[J].信息系統工程,2024(11):16-19.
[7]王曉雯.基于元數據的自定義數據結構設計與應用[J].信息技術與信息化,2024(4):130-133.