本系统采用前后端分离的B/S架构,基于经典的三层架构设计,将系统划分为前端展示层、后端服务层和数据存储层,层与层之间通过定义清晰的RESTful接口进行通信,降低了模块间的耦合度,提升了系统的可维护性和可扩展性。
前端架构:基于MVVM模式,使用Vue.js 2.x作为核心框架,结合Vue Router实现单页面应用的路由管理,通过Vuex进行全局状态管理(如购物车数据、用户登录状态)。UI层面采用Element UI组件库,快速构建风格统一的响应式界面。前端通过Axios拦截器统一处理HTTP请求,包括JWT令牌附加、错误码统一处理等。
后端架构:采用Spring Boot 2.7.x搭建微服务基础框架,遵循RESTful风格设计API接口。持久层使用MyBatis框架,通过XML文件灵活编写动态SQL,数据库连接池采用HikariCP。业务层使用@Service注解管理Bean,事务管理通过@Transactional注解声明式实现。安全控制方面,集成Spring Security和JWT实现用户认证与权限校验。
数据存储:采用MySQL 8.0关系型数据库,根据E-R图设计了用户表、商品表、订单表、溯源信息表等核心数据表,通过索引优化查询性能。
其他技术栈:项目构建使用Maven管理依赖,后端内嵌Tomcat 9.0作为Servlet容器,接口测试使用Postman,版本控制采用Git。
核心模块技术栈分布:
用户认证模块:Spring Security + JWT + Vue Router路由守卫
商品展示模块:Vue组件化开发 + Axios异步请求 + MyBatis分页查询
购物车模块:Vuex状态管理 + 本地缓存 + 后端同步接口
订单处理模块:Spring事务管理 + 库存锁定机制
溯源管理模块:多表关联查询 + 文件上传(Element UI Upload组件)
数据统计模块:ECharts图表库 + SQL聚合查询
在本系统的开发过程中,我独立完成了全栈开发工作,包括前端页面搭建、后端接口实现、数据库设计以及系统部署测试。具体负责的核心模块及成果如下:
1. 用户端全流程功能模块
实现了用户注册、登录、密码找回功能,采用JWT令牌管理用户会话,支持游客与注册用户的权限区分
完成商品分类浏览、关键词搜索、多条件排序(价格/销量/上新时间)功能,商品列表加载速度控制在300ms以内
开发购物车模块,基于Vuex实现状态同步,支持商品数量修改、批量删除、结算跳转等操作
实现订单提交全流程:收货地址选择、库存校验、订单生成、支付模拟(状态流转)、售后申请入口
完成评价系统:支持图文评价、评分展示、评价审核状态显示
2. 管理员端核心管控模块
开发数据统计仪表盘,集成ECharts实现用户增长趋势、商品销量排行、订单金额走势等6类可视化图表
实现商品管理模块:商品上下架、分类管理、库存修改、热销标记,支持批量操作
完成订单处理模块:订单列表多条件查询、发货处理(物流单号填写)、售后申请审核
开发评价审核模块:管理员可审核、回复、删除用户评价
实现通知推送模块:系统通知的编辑、定时推送、历史记录管理
3. 溯源体系特色功能模块(核心亮点)
设计并实现农产品全链路溯源信息管理功能,涵盖“产地→种植→加工→物流”四个核心环节
开发溯源信息录入界面,支持多环节动态添加、图片上传(最多9张/环节)
实现溯源码自动生成(格式:TRC+时间戳+4位随机数),确保每批次农产品具有唯一追溯标识
在商品详情页集成溯源档案展示模块,以时间轴形式直观呈现各环节信息,提升消费者信任度