基於SpringBoot 2的管理後台系統

本文demo下載:http://www.wisdomdd.cn/Wisdom/resource/articleDetail.htm?resourceId=1062

一個基於SpringBoot 2 的管理後臺系統,包含了用戶管理,組織機構管理,角色管理,功能點管理,菜單管理,權限分配,數據權限分配,代碼生成等功能

系統基於Spring Boot2技術,前端採用了Layui2。數據庫以MySQL為實例,理論上是跨數據庫平臺.

基本技術棧來源於我為電子工業出版社編寫的的<> (這本書每一章也有各種例子,但Springboot-plus 更偏向於應用而不是教學)

當前版本:1.0.0

視頻介紹:https://pan.baidu.com/s/1dFPoaT7

基於SpringBoot 2的管理後臺系統

基於SpringBoot 2的管理後臺系統

基於SpringBoot 2的管理後臺系統

基於SpringBoot 2的管理後臺系統

基於SpringBoot 2的管理後臺系統

基於SpringBoot 2的管理後臺系統

1 使用說明

1.1 安裝說明

從Git上獲取代碼後,通過IDE導入此Maven工程,包含倆個子工程

  • admin-core ,核心包,包含了緩存,數據權限,公用的JS和HTML頁面。

  • admin-console, 系統管理功能,包含了用戶,組織機構,角色,權限,數據權限,代碼生成等管理功能

com.ibeetl.admin.CosonleApplication 是系統啟動類,在admin-console包下,在運行這個之前,還需要初始化數據庫,位於doc/starter-mysql.sql,目前只提供mysql和oracle腳本。理論上支持所有數據庫

還需要修改SpringBoot配置文件application.properties,修改你的數據庫地址和訪問用戶

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/starter?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8&useSSL=falsespring.datasource.username=rootspring.datasource.password=123456

建議在徹底熟悉plus系統之前,先暫時不要修改其他配置選項,免得系統無法訪問

本系統基於Spring Boot 2 ,因此請務必使用JDK8,且打開編譯選項parameters, 並重新編譯工程,如果你沒有使用Java8的 parameters 特性,系統不能正常使用

運行CosonleApplication,然後訪問http://127.0.0.1:8080/ 輸入admin/123456 則可以直接登錄進入管理系統

如果成功啟動後運行報錯:變量userId未定義,位於第6行,那是因為你沒有啟用parameters

1.2 創建子系統

SpringBoot-plus 是一個適合大系統拆分成小系統的架構,或者是一個微服務系統,因此,如果你需要創建自己的業務系統,比如,一個CMS子系統,建議你不要在SpringBoot-Plus 添加代碼,應該是新建立一個maven工程,依賴admin-core,或者依賴admin-console(如果你有後臺管理需求,通常都有,但不是必須的)

創建子系統,可以進入代碼生成>子系統生成, 輸入maven項目路徑,還有包名,就可以直接生成一個可運行的基於SpringBoot-Plus 的子系統

1.2.1 配置子系統

子系統不需要做任何配置即可在IDE裡直接運行,如果你想打包城jar方式運行,則需要添加

   org.springframework.boot spring-boot-maven-plugin  

如果你想打包成war放到tomcat下運行,需要修改maven打包為war

war

1.2.2 菜單系統

系統默認提供三種類型菜單

  • 系統級菜單,出現在頁面頂部,表示一個子系統

  • 導航菜單,出現在頁面左邊,點擊導航將打開其下所有菜單

  • 菜單,點開菜單將定位到頁面,菜單必須關聯到一個功能點。

建議新建立一個子系統來放置新功能

SpringPlus-Boot 並非以菜單或者按鈕來組織整個系統,而是以功能點來組織整個系統提供的功能。如果要使得菜單生效,你必須要先常見一個功能點並且功能點有一個訪問地址,然後將此菜單關聯到這個功能點

SpringBoot-Plus 先建立功能點是個好習慣,功能點被組織成一顆樹,代表了系統應該提供功能的功能,我們看代碼就會看到,功能點跟菜單,跟權限,和數據權限都有密切關係

1.2.2 添加代碼

可以參考1.3業務代碼生成生成初始化的代碼

1.3 業務代碼生成

在介紹如何利用Plus開發系統之前,先介紹代碼生成功能,此功能可以生成前後端代碼總計14個文件,你可以通過預覽功能瞭解如何開發這個系統

基於SpringBoot 2的管理後臺系統

代碼生成針對表進行代碼生成,包括JS,JAVA,SQL和HTML,可以通過預覽功能直接預覽。在生成代碼到本地前,有些參數需要修改,否則,代碼生成後顯示的都是英文

  • 顯示字段 : 當此實體顯示在任何地方的時候,能代表此實體的名稱,比如用戶名,組織機構名

  • 變量名:可以自己設定一個較短的名字,此變量名會用於前後端的變量

  • urlBase:你規劃的子系統,最後訪問路徑是urlBase+變量名字

  • system: 存放sql目錄的的名稱

其他修改的地方有

是否包含導入導出,如果選擇,則會生成導入導出的代碼,導入導出模板則需要參考已有功能(比如數據字典)來完成

是否包含附件管理,如果選擇,則業務對象可以關聯一組附件,比如客戶關聯一組附件,或者申請信息關聯一組附件。

字段信息的顯示名字,這個用於前端列表,表單的顯示,應當輸入中文名字

作為搜索,可以勾選幾個搜索條件,系統自動生成一個搜索配置類

如果字段關聯數據字典,那麼設置一個數據字典,這樣,生成的界面將會變成一個下拉列表

1.3.1 前端代碼

前端代碼採用了layui的JS框架,使用了按需加載的方式,文檔參考 http://www.layui.com/doc/base/infrastructure.html.

  • index.js: 系統入口JS,包含了查詢和表格

  • add.js : 新增操作的所有JS

  • edit.js: 編輯操作的所有JS

  • del.js: 刪除操作的所有JS

基礎JS

  • Common.js: 封裝了通常JS功能,如jquery的post方法,layui的窗口方法

  • Lib.js 封裝了業務相關方法,如submitForm,loadOrgPanel等方法

1.3.2 HTML代碼

頁面採用layui,文檔參考 http://www.layui.com/demo/

模板語言了使用Beetl,文檔參考ibeetl.com

  • index.html: 功能首頁

  • add.html: 新增首頁

採用layui的好處是自帶了頁面和組件還有JS的管理,能完成大多數業務需求

基礎UI組件:

  • orgInput.tag.html 組織機構輸入框

  • simpleDictSelect.tag.html 字典下拉列表

  • simpleDataSelect.tag 包含key-value的下拉列表

  • searchForm.tag.html 通用搜索表單

  • submitButtons.tag.html 提交按鈕

  • accessButton.tag.html 普通按鈕(含權限)

  • attachment.tag.html 附件管理組件


分享到:


相關文章: