Base Admin: A Simple Generic Backend Management System with SpringBoot, Thymeleaf, and Layui
This article introduces Base Admin, a lightweight yet feature‑rich backend management system built with SpringBoot, Thymeleaf, WebSocket, Spring Security, MySQL and a Layui frontend, detailing its architecture, core modules, real‑time logging, monitoring, API encryption, and code‑generation utilities.
The Base Admin project provides a simple, generic backend management system covering permission management, menu management, user management, system settings, real‑time logs, monitoring, API encryption, and customizable user menus.
Technology Stack : Frontend uses Layui; backend is built with SpringBoot, Thymeleaf, WebSocket, Spring Security, Spring Data JPA and MySQL.
Project Structure : Java, HTML, JS, and CSS files are organized under a main directory with subfolders for each table.
Key Features include:
Login with optional captcha, support for multiple concurrent sessions, IP restrictions, account expiration, and remember‑me functionality.
Dynamic permission loading from the database, allowing runtime updates without code changes.
User management with profile editing, password reset (MD5‑hashed), and online user monitoring.
Customizable quick menus for each user.
Real‑time log and system monitoring displayed via WebSocket with one‑second refresh intervals.
API encryption with RSA key pair generation, request decryption before authentication, and response encryption, controllable via a system setting.
Implementation Highlights :
Custom URL access control requires a custom authentication data source, manager, and interceptor.
Decryption of request parameters is performed in CaptchaFilterConfig before the UsernamePasswordAuthenticationFilter .
During development hot‑deployment, the frontend fetches the latest public key on index page load to avoid mismatched keys.
The CodeDOM.java utility can generate complete CRUD code for a single table after configuring the database and output path.
The system is open‑source and hosted on GitHub and Gitee, with database scripts located in resources/static/sql . Additional updates include Baidu rich‑text editor integration, theme color switching, and a “remember me” feature.
Java Captain
Focused on Java technologies: SSM, the Spring ecosystem, microservices, MySQL, MyCat, clustering, distributed systems, middleware, Linux, networking, multithreading; occasionally covers DevOps tools like Jenkins, Nexus, Docker, ELK; shares practical tech insights and is dedicated to full‑stack Java development.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.