<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          一套簡單通用的Java后臺管理系統(tǒng),拿來即用,非常方便(附項目地址...

          共 2506字,需瀏覽 6分鐘

           ·

          2020-07-26 12:13

          點擊上方藍(lán)色“小哈學(xué)Java”,選擇“設(shè)為星標(biāo)

          回復(fù)“資源”獲取獨家整理的學(xué)習(xí)資料!

          3b03cb8f56ce8caebc85ae62418bfaa2.webp

          34e2fc1a4cf420d01c5681383305f7cf.webp

          作者:huanzi-qch

          cnblogs.com/huanzi-qch/p/11534203.html

          前言

          這套Base Admin是一套簡單通用的后臺管理系統(tǒng),主要功能有:權(quán)限管理、菜單管理、用戶管理,系統(tǒng)設(shè)置、實時日志,實時監(jiān)控,API加密,以及登錄用戶修改密碼、配置個性菜單等

          技術(shù)棧

          前端:layui

          java后端:SpringBoot + Thymeleaf + WebSocket + Spring Security + SpringData-Jpa + MySql

          工程結(jié)構(gòu)說明

          java部分、html、js、css部分都是大目錄下面按單表一個子目錄存放

          316f185cbe8c88f7f51f04e9f668ca3d.webp

          b03387aac6107ca6cba418379924cba1.webp

          運行預(yù)覽

          效果先睹為快,具體介紹在下方,按功能點進(jìn)行詳情介紹

          ab27e99e119c62adc33444336fc06b0e.webp

          功能演示

          登錄

          (為了方便演示,密碼輸入框的類型改成text)

          配置文件分支選擇,dev環(huán)境無需輸入驗證碼

          6965fd156d22878cab2397fec8f8101e.webp

          5cc28b0163328b8746e81f636787cc36.webp

          同時支持多種登錄限制

          允許/禁止賬號多人在線

          8b235aeebeb6553b3b435d2f1f065bf4.webp

          軟刪除

          c36da91ca891140d5aeb4e6b637a5ca2.webp

          限制登錄IP地址

          415b6ed861d468d31cc3ed304121d38d.webp

          賬號過期

          3f4ee06086f438e272414085dc25bafe.webp

          更多登錄限制,還可以繼續(xù)擴(kuò)展

          系統(tǒng)設(shè)置

          一下簡單的系統(tǒng)屬性設(shè)置,想支持更多的配置可自行擴(kuò)展(比如這里的:用戶管理初始、重置密碼)

          5f8887e3bafb1069d985b4dc09081ce9.webp

          系統(tǒng)設(shè)置新增部分功能,詳見文末“補(bǔ)充更新”。

          推薦閱讀:設(shè)計模式入門

          菜單管理

          菜單管理是一棵layui的Tree

          增刪改

          a661ea9e6380bb13f6d240a5196e116b.webp

          權(quán)限管理

          增刪改查

          4e9938d3491351c66d39af03f08d3c7a.webp

          動態(tài)權(quán)限加載

          權(quán)限的加載并不是寫死在代碼,而是動態(tài)從數(shù)據(jù)庫讀取,每次調(diào)用save方法時更新權(quán)限集合

          1、妲己是ROLE_USER權(quán)限,權(quán)限內(nèi)容為空,無權(quán)訪問/sys/下面的路徑(http://localhost:8888/sys/sysUser/get/1)

          2、使用sa超級管理員進(jìn)行權(quán)限管理編輯,給ROLE_USER的權(quán)限內(nèi)容添加 /sys/**,妲己立即有權(quán)限訪問(http://localhost:8888/sys/sysUser/get/1)

          6d1c4d64616274913e1fed29b767c52a.webp

          用戶管理

          主要包括用戶信息、登錄限制的維護(hù),菜單、權(quán)限的分配等

          83df1af9988e90a39e5e52bd777b3d3d.webp

          修改用戶權(quán)限是下一次登錄生效

          4935efd828ca9b571e4a8489e5c376c0.webp

          修改用戶菜單是刷新系統(tǒng)即可生效

          fda7507500d13c3fb762c3c290e96aa8.webp

          用戶管理新增“當(dāng)前在線用戶”管理,詳見文末“補(bǔ)充更新”。

          推薦閱讀設(shè)計模式入門

          登錄用戶信息

          基本信息

          登錄用戶只能修改部分信息,例如名稱、修改密碼

          4579d030d4024e7b4df73e5952d8028d.webp

          修改密碼

          密碼使用的是MD5加密并轉(zhuǎn)換為16進(jìn)制字符串存儲,用戶除了能主動修改密碼外,還能叫管理員重置密碼

          0ea59a30a1a549dc2e87a57886a9938d.webp

          efe85c52348f56822df798d456920eff.webp

          個性菜單

          用戶可以自行配置自己的個性化快捷菜單

          a67ae78d4fd5791cedbb4db7486ed645.webp

          實時日志

          使用websocket,實時將日志輸出到web頁面,1秒刷新一次

          注意:這里的日志配置只配置了dev環(huán)境,prod環(huán)境尚未為空,發(fā)布生產(chǎn)環(huán)境前記得先配置,否則生成的日志文件將不會輸入日志內(nèi)容!

          dedfca2cd64ea7dc2201ee10ca95a34f.webp

          b2429b1b430b9ba10ef25f1b6f7a367f.webp

          實時監(jiān)控

          實時監(jiān)控的是系統(tǒng)硬件環(huán)境、以及jvm運行時內(nèi)存,注:因本人暫無Linux環(huán)境,所以只測試了windows環(huán)境,有問題請及時反饋,謝謝!

          使用websocket,實時將數(shù)據(jù)輸出到web頁面,1秒刷新一次

          b623bdb8d3eb2d4528a8c225c5b41f2f.webp

          API加密

          請求參數(shù)加密

          b4eb4cefe5185c6b76f3f43b47e8c83d.webp

          響應(yīng)數(shù)據(jù)加密

          92e095530eb61f7f25698e59598d4301.webp

          1、系統(tǒng)設(shè)置新增API加密開關(guān),可一鍵關(guān)閉、開啟API加密;

          開啟API加密

          5bceea16b51c5ec5c6c5e21f031a08cc.webp

          關(guān)閉API加密

          5ad1c5b759cacdbbb995062c9eed7a72.webp

          關(guān)鍵點講解

          1、定制url訪問權(quán)限,動態(tài)權(quán)限讀取,需要自定義配置認(rèn)證數(shù)據(jù)源、認(rèn)證管理器、攔截器,詳情步驟請參考:

          https://www.jianshu.com/p/0a06496e75ea;

          2、API加密中,由于登錄校驗是Spring Security做的,因此我們要在UsernamePasswordAuthenticationFilter獲取賬號、密碼之前完成解密操作,正好我們的校驗驗證碼操作就是在它之前,同時要做響應(yīng)數(shù)據(jù)的加密操作,所以登錄部分的API加密光按照我們之前的博客來還是不夠的,需要在CaptchaFilterConfig進(jìn)行解密操作,解密后new一個自定義RequestWrapper設(shè)置Parameter,并將這個新對象傳到doFilter交由下一步處理

          3、還是API加密問題,我們是在程序啟動的時候生成后端RSA秘鑰對,正常來說我們在訪問登錄頁面進(jìn)行登錄的時候前端獲取一下就可以了,但在開發(fā)環(huán)境中,我們通常開啟熱部署功能,改完代碼程序可能會自動重啟,但登錄用戶信息仍然保持在本地線程,系統(tǒng)依舊處于登錄狀態(tài)沒有跳轉(zhuǎn)到登錄頁面,導(dǎo)致后端公鑰已經(jīng)改變,但前端依舊用的是舊的后端公鑰,所有導(dǎo)致加解密失敗;解決:在訪問index首頁時也獲取一下后端公鑰,這樣在開發(fā)的時候idea熱部署后刷新頁面就可以了(已提交最新代碼,解決熱部署后刷新頁面還是API加解密失敗問題;現(xiàn)在熱部署后刷新頁面即可)

          更新

          1、新增百度富文本的使用,但還沒配置上傳接口:

          UEditor文檔: http://fex.baidu.com/ueditor/#start-start

          對應(yīng)字段類型,mysql要改成longtext

          98f5e1caed266dd53052911f1715fe06.webp

          2、新增“”記住我“”功能,也就是rememberMe,原理以及源碼探究請看這位大佬的博客:

          https://blog.csdn.net/qq_37142346/article/details/80114609

          6b326b51855a5d20575a45117bff4795.webp

          043e238069cb4f90151ce51c1fd3b2e8.webp

          3、系統(tǒng)設(shè)置新增系統(tǒng)顏色,頭部、左側(cè)菜單的顏色可按心情切換(SQL文件已同步更新)

          e8edc41e44bdab2dd93545ad5661426e.webp

          4、用戶管理模塊新增“當(dāng)前在線用戶”管理,可實時查看當(dāng)前在線用戶,以及對當(dāng)前在線用戶進(jìn)行強(qiáng)制下線操作

          58dcdc991befb9622d0b239d909f5e9c.webp

          代碼地址

          GitHub:https://github.com/huanzi-qch/base-admin

          碼云:https://gitee.com/huanzi-qch/base-admin


          END


          0978873e64035a433f8c4d58ec808d0b.webp

          有熱門推薦?

          1.?項目是如何死掉的?太過真實!

          2.?滴滴技術(shù)牛逼嗎?看它開源了哪些有意思的項目

          3.?一千個不用 Null 的理由!

          4.?面試:如何決定使用 HashMap 還是 TreeMap?

          最近面試BAT,整理一份面試資料Java面試BATJ通關(guān)手冊,覆蓋了Java核心技術(shù)、JVM、Java并發(fā)、SSM、微服務(wù)、數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)等等。

          獲取方式:點“在看”,關(guān)注公眾號并回復(fù)?Java?領(lǐng)取,更多內(nèi)容陸續(xù)奉上。

          文章有幫助的話,在看,轉(zhuǎn)發(fā)吧。

          謝謝支持喲 (*^__^*)

          瀏覽 16
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产色情 免费 | 蜜芽无码AV | 日韩视频导航 | gogo大胆无码无码免费视频 | 麻豆91麻豆国产传媒 |