1. 项目概述与背景
去年接手一个社区电商平台的二次开发项目时,我深刻体会到一套健壮的网上超市系统对中小商家的价值。这个基于SpringBoot+Vue的网上超市管理系统,正是我在多个实际项目经验基础上提炼出的通用解决方案。相比传统实体超市,线上系统能突破时空限制,将营业时间延长至24小时,覆盖半径从500米扩展到全城,这正是某生鲜平台接入系统后订单量提升3倍的关键。
系统采用现在主流的前后端分离架构,后端使用SpringBoot 2.7 + MyBatis-Plus 3.5的组合,前端采用Vue 3 + Element Plus,数据库选用MySQL 8.0。这种技术栈选择既保证了开发效率,又能应对日均10万级订单的业务压力。特别值得一提的是,我们在用户认证方案上采用了JWT+RBAC的组合,既解决了无状态会话问题,又实现了细粒度的权限控制。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心功能模块设计
2.1 用户管理模块
用户体系采用分级设计,区分普通用户、VIP用户和管理员三种角色。密码存储没有使用简单的MD5,而是采用BCryptPasswordEncoder进行加盐哈希,这是我们在某次安全审计后做的重点改进。核心用户表字段设计如下:
sql复制CREATE TABLE `user` (
`user_id` int NOT NULL AUTO_INCREMENT,
`username` varchar(50) NOT NULL COMMENT '登录账号',
`password` varchar(100) NOT NULL COMMENT 'BCrypt加密密码',
`email` varchar(50) NOT NULL COMMENT '绑定邮箱',
`phone` varchar(20) DEFAULT NULL COMMENT '手机号',
`avatar` varchar(255) DEFAULT NULL COMMENT '头像URL',
`register_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`account_status` tinyint NOT NULL DEFAULT '1' COMMENT '0-禁用 1-启用',
`user_type
