999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于SpringBoot快速開發平臺的實現

2021-09-23 06:07:30李鵬
電子技術與軟件工程 2021年12期
關鍵詞:用戶功能服務

李鵬

(寧夏希望信息股份有限公司 寧夏回族自治區銀川市 750001)

1 平臺研發背景

隨著信息技術的快速發展,軟件系統的規模和復雜度也越來越高,特別是企業級應用平臺的開發,涉及到的知識和內容非常廣泛。為了使程序員能夠集中精力完成系統的業務邏輯設計,降低軟件開發難度,將信息系統中一些基礎通用功能,比如:事物處理,安全性,數據流控制等都交給平臺框架處理,從而解決軟件開發中依賴復雜、編碼復雜、配置復雜、部署復雜、監控復雜等難題。

2 平臺定位

平臺采用“強規范式編程”思想,高標準的設計和編碼規范、高標準配置的開發環境;平臺簡化程序依賴、簡化部署、簡化配置、提供通用組件,是一個綜合型框架,致力于J2EE應用的各層的解決方案,且保持開放性。

平臺采用快速原型技術,有利于在一個項目內多人協同工作。重用代碼大大增加,提高軟件生產效率和質量。代碼結構的規范化,降低程序員之間溝通以及日后維護的成本。讓經驗豐富的開發人員去設計框架和領域構件,而不必限于低層級的編程;參數化框架使得軟件的適應性、靈活性增強。

3 平臺主要功能

3.1 權限管理

權限管理包括:部門管理、用戶管理、角色管理、菜單管理、模塊管理、功能管理、操作管理、在線用戶。

權限管理做為一個可插拔的子平臺通過接口集成在開發平臺中,也就是說,權限管理子平臺不是必須的,當開發平臺做為老舊系統的擴展系統集成到老舊系統中時,可去除權限管理子平臺而使用原老舊系統的權限管理。去除權限管理子平臺后,可被集成到原老舊系統中,這種可被集成的特性大大延長了老舊平臺的生命周期。

3.1.1 部門管理和用戶管理

部門為樹型結構,以樹型和子部門列表方式展現,部門設置有順序、狀態,可查看部門信息的詳細內容,刪除為邏輯刪除;部門與用戶為一對多關系,可調整用戶的部門,可鎖定和邏輯刪除一個用戶,可給用戶重置密碼,可給用戶分配角色,也可對第三方應用接入人員分配接口組權限。

3.1.2 角色管理

平臺采用RBAC(基于角色的訪問控制)方式控制權限。角色分成多組,每個角色可添加多個用戶,給角色分配可訪問的菜單及功能,還能給角色分配訪問數據的數據權限。

3.1.3 菜單管理和模塊管理

平臺增強的權限控制不僅前端控制(菜單、頁面、按鈕的顯示),而且每個操作后臺也做了權限控制及日志記錄,防范非法操作。菜單管理(及模塊管理)是權限管理的基礎部分。

3.1.4 功能管理和操作管理

平臺為了強化安全,細化了權限控制粒度,把權限控制做到了功能及操作的最細粒度。在角色分配功能中,雖然授權的是功能,真正后臺控制的是功能下的操作。

3.1.5 在線用戶

平臺加強了系統監控和用戶監控。在線用戶功能可顯示登錄歷史時長及以線用戶,也可以強制在線用戶下線。

圖1:多數據源讀寫分離示意圖

圖2:代碼生成流程

3.2 平臺管理

平臺管理有字典管理、參數管理、定時任務管理、任務歷史查詢、附件查詢、公告管理、(阿里云)短信管理、短信歷史查詢、服務監控、服務器性能歷史、Druid監控等。

3.2.1 字典管理

字典管理配置各模塊使用的字典項。字典與表字段強對應。字典項給代碼生成工具提供靜態常量生成到模塊實體中;字典項前端選擇標簽提供下拉列表選項。

3.2.2 參數管理

參數管理主要維護系統中所有配置參數。參數的新增由后臺代碼完成添加默認值,由參數管理修改功能來改變默認值。

3.2.3 分布式定時任務管理及運行歷史

定時任務管理的底層由Quartz分布式定時任務組件完成,添加了管理界面和底層任務封裝,運行期可掃描到所有的任務類方便維護。

3.2.4 附件管理

附件管理只完成附件查看、下載、刪除功能,新增和邏輯刪除功能由各業務模塊完成。附件管理給管理員提供一個處理附件的窗口。

3.2.5 公告管理

公告管理是管理員對所有在線用戶提供一些通知性的消息。當有消息時,在線用戶在訪問新頁面時,會彈出提示消息。

3.2.6 短信管理、模板查詢及短信發送歷史短信管理提供管理員手動發送短信的機制。對接受眾最多的阿里云短信服務,還可以查看阿里云上設置的模板、簽名情況,還可以查看業務發送的短信歷史。

3.2.7 服務監控

服務監控提供了分布式服務的健康情況以及服務所在服務器的情況,監控分布式服務狀況,記錄服務啟動、停止等信息。

3.2.8 服務性能監控

服務監控的同時,也記錄了服務器性能情況,給后續的服務器調優工作提供數據依據。

3.2.9 Druid監控

集成了Druid組件提供的性能監控,全面監控系統運行期各種性能指數,給排錯、調優提供詳細信息。

3.3 日志管理

日志管理子平臺以接口方式集成到了開發平臺,使用者可選擇是否使用。因為日志數據量大,并且需要長久保存,每日備份數據量太大,所以使用者可選擇日志輸出的數據庫及制定與系統主體不同的備份策略。

日志管理包含登錄日志、操作日志、錯誤日志。日志管理給項目審計工作提供支持,也是等級保護評測要求的基本內容。

3.3.1 登錄日志

登錄日志記錄用戶詳細的登錄信息,提供給管理員或審計員做分析使用。

3.3.2 操作日志和錯誤日志

操作日志查詢功能記錄詳細的操作信息,也記錄了操作過程中的異常信息,結合全局異常處理微框架,提供“可查詢的異常”功能。開發平臺提供透明的操作日志記錄和異常日志記錄,提升開發平臺的易用性。

3.4 分布式無狀態架構

平臺部署時是分布式無狀態結構,以Redis或數據庫保存會話狀態,支持以子系統為單位的多數據源和讀寫分離,支持Web服務的動態水平擴展。

3.5 多數據源讀寫分離

平臺本身是多數據源讀寫分離的環境,修改配置可為單數據庫讀寫同源,不僅可用于小應用部署,更方便開發期使用,如圖1。

3.6 代碼生成工具

代碼生成工具以數據庫設計為驅動,動態生成CRUD代碼,簡化開發,如圖2。

代碼生成工具在平臺強規范的約束下,會覆蓋不可手動修改的基礎代碼,對可修改的代碼給出參考代碼供其復制粘貼。

在線代碼生成工具設置好ID前輟和生成路徑,在運行時直接把代碼生成到運行環境中,重啟服務后就可以使用。

3.7 查詢封裝

針對最易變的查詢條件更改,封裝查詢(框架通過反射機制自動獲取查詢條件和類型)不僅能快速變更查詢條件,而且不需要修改類代碼。

封裝的查詢支持多種數據類型和查詢類型,如:eq、ne、ge、gt、le、lt、like、likeLeft、likeRight、notLike、in、notIn、orderBy等。

3.8 集成被集成

平臺使用OAuth2協議接入第三方應用,同時平臺有被集成能力,可接入其他系統中。平臺的權限管理(部門、用戶、角色、模塊等)是與平臺主體脫耦的,去除權限管理后可被集成到其它有系統中。

3.9 分布式文件服務

文件存儲(附件、圖片等)是javaWeb系統不可或缺的一部分。分布式環境下的文件存儲一般借助于OSS這樣的文件系統。文件服務依靠自身來分布式文件存儲,通過修改配置可動態切換文件存儲的服務,也可以單服務運行,給中小微系統提供可擴展支持。

單服務方式適用于小微應用的部署。依賴少,完全掌握不受限;多服務方式適用于開發自測,每個開發電腦都是一個服務,完成分布式環境自測;多服務方式適用于大中型應用部署,依賴小,自控能力強;單服務可調整配置轉變為分布式方式,應用擴展只需要修改配置文件。

3.10 分布式監控

分布式監控分為在線用戶監控、服務監控、服務器監控。分布式環境下,用戶由負載均衡服務器分散在各服務上,在線用戶監控可登錄任一服務監控到所有用戶,并可查看用戶登錄歷史以及強制用戶下線。

3.11 接口管理

在權限管理和在線API接口文檔的基礎上,集合兩者的優點,不添加額外服務及性能來提供系統對第三方接口的管理。

3.12 工作流封裝

工作流是信息化平臺不可或缺的一部分,本開發平臺采用業務最常用的開源工作流Activity的升級版Flowable,版本為6.4.1。

工作流部分可分為流程設計、模型部署、任務待辦、任務已辦、流程業務、請假實例等。工作流的功能更多是提供給開發人員開發、調試、自測和二次開發使用,而非最終用戶使用。工作流子系統采用分庫、松耦合方式,提供了可調試的供二次開發使用的封裝。

3.13 即時通訊

即時通訊專為工作溝通定制。采用WebSocket技術及使用LayUI-LayMI組件,形式類似于QQ或微信,并嵌入了公司組織結構,使企業內部溝通更容易。

3.14 其他小特性

3.14.1 國密加密集

開發平臺添加了國密SM2、SM3、SM4等加密工具類,還在此基礎上添加了加密版本號及限時策略,使加密工具也可以向下兼容式升級。

3.14.2 策略緩存

開發平臺采用組合式緩存;分布式環境下使用Redis緩存;單服務采用EhCache緩存;平臺自動測試Redis,如果連接失敗則采用EhCache緩存。

3.14.3 動態表名

以MyBatisPlus動態表名功能為基礎;實現動態表名接口,添加表名轉換規則;由Spring的組件掃描注入方法注冊。

3.14.4 數據權限

數據權限以樹形部門結構為基礎;部門表添加部門編號和父部門編號字段來支持數據權限的實現;角色管理中添加給角色“數據權限”功能,權限范圍:僅本人、本部門、本部門及以下、自定義部門、全部;需要根據權限的業務表添加創建者ID、部門ID、部門編號、父部門串等字段。

3.14.5 選擇列導出

開發平臺采用了EasyPOI導入導出組件,添加了選擇列導出功能;開發平臺把選擇列導出功能集成到代碼生成工具中,成為基礎功能。

4 結束語

本文提出的基于SpringBoot快速開發平臺適用于各行業管理系統的快速搭建,對基于Web的應用平臺開發具有先天的優勢。開發人員無需掌握大量底層技術架構,大大減少項目開發工作量,縮短項目的實施周期,大幅提升交付率,節約了企業的研發成本和人力成本,使用平臺快速實現用戶需求。

猜你喜歡
用戶功能服務
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
關于非首都功能疏解的幾點思考
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 夜色爽爽影院18禁妓女影院| 欧美另类视频一区二区三区| julia中文字幕久久亚洲| 国产一二三区视频| 538国产在线| 看你懂的巨臀中文字幕一区二区 | 朝桐光一区二区| 综合色区亚洲熟妇在线| 在线观看免费国产| 一级成人欧美一区在线观看 | 91蝌蚪视频在线观看| 毛片在线看网站| 久热这里只有精品6| 日本三区视频| 久久熟女AV| 欧美不卡视频在线| 中文字幕人成人乱码亚洲电影| 二级特黄绝大片免费视频大片| 国产成人精品视频一区视频二区| 激情综合图区| 国产日韩欧美中文| 中文字幕久久亚洲一区| 精品视频福利| 高清色本在线www| 亚洲美女操| 亚洲AV成人一区国产精品| 欧美中文字幕在线视频| 激情爆乳一区二区| 精品综合久久久久久97超人| 国产精品污视频| 国产乱人伦精品一区二区| 亚洲综合色区在线播放2019| 欧美性猛交一区二区三区| 婷婷丁香在线观看| 丝袜亚洲综合| 国产主播福利在线观看| 日本午夜影院| 久久香蕉国产线看观看精品蕉| 久久人与动人物A级毛片| 青青草原国产| 黄色网址手机国内免费在线观看| 精品人妻系列无码专区久久| 久久精品视频亚洲| 国产福利微拍精品一区二区| 91在线丝袜| 欧美69视频在线| 久久精品欧美一区二区| 亚洲视屏在线观看| 久热re国产手机在线观看| 日韩免费视频播播| 欧美亚洲国产精品久久蜜芽| 国模私拍一区二区| 91小视频版在线观看www| 国产高清在线观看| 99视频有精品视频免费观看| 欧美一区中文字幕| 都市激情亚洲综合久久 | 国产精品免费久久久久影院无码| 91精品视频网站| 日韩天堂在线观看| 日本高清有码人妻| 久久亚洲欧美综合| 熟女日韩精品2区| 高清不卡毛片| 亚洲bt欧美bt精品| 国产精品冒白浆免费视频| 亚洲综合天堂网| 国产三级毛片| 天天色综合4| 黄色a一级视频| 日韩精品无码免费专网站| 国产精品七七在线播放| 国产第一页免费浮力影院| 日韩精品无码免费一区二区三区| 欧美日本在线观看| 久久精品66| 日本不卡在线播放| 国产精品午夜福利麻豆| 亚洲欧美在线综合图区| 成人福利一区二区视频在线| 国内丰满少妇猛烈精品播| 99精品影院|