基于 Spring Boot 3 与 Vue 3 的汽车租赁系统

汽车租赁系统

前后端分离的汽车租赁管理系统,包含用户端 (选车、下单、订单管理)与管理后台(统计、车辆管理、订单管理)。


项目截图

功能概览

用户端

功能 说明
首页 / 选车 浏览车辆列表,按品牌、车型、状态筛选,分页查看
车辆详情 查看车辆信息、日租金、描述等,支持选择租期并下单
登录 / 注册 用户名或手机号登录,新用户注册
我的订单 查看个人订单列表,支持取消、支付、查看详情
下单流程 选择取还车时间与地点,创建订单并支付(模拟)

管理后台

功能 说明
控制台 展示车辆总数、订单总数、用户数统计
车辆管理 车辆列表(分页、按品牌/车型/状态筛选),新增、编辑、删除车辆
订单管理 全部订单列表(按状态筛选),管理员修改订单状态(待支付 / 待取车 / 进行中 / 待还车 / 已完成 / 已取消 / 异常)

管理后台需使用 admin 账号登录,登录后可从用户端入口进入「管理后台」或直接访问 /admin


技术栈

技术
后端 Java 17、Spring Boot 3、MyBatis-Plus、Spring Security + JWT、MySQL 8、Redis、Knife4j
前端 Vue 3、TypeScript、Vite、Element Plus、Pinia、Vue Router 4、Axios

项目结构

复制代码
├── car-rental-system/     # 后端(Spring Boot 单体)
│   ├── car-rental-common/   # 公共模块
│   ├── car-rental-app/      # 主应用(认证、用户、车辆、订单、管理端接口)
│   └── sql/                 # 建表与初始化数据
├── car-rental-frontend/   # 前端(Vue 3 + Vite)
│   └── src/
│       ├── views/user/      # 用户端页面
│       ├── views/admin/     # 管理后台页面
│       ├── api/             # 接口封装
│       └── ...
└── README.md             # 本说明

快速开始

1. 数据库

bash 复制代码
cd car-rental-system
mysql -u root -p < sql/schema.sql
mysql -u root -p car_rental < sql/init-data.sql   # 可选:测试数据

2. 后端

修改 car-rental-system/car-rental-app/src/main/resources/application.yml 中的数据库、Redis 配置后:

bash 复制代码
cd car-rental-system
mvn clean install
cd car-rental-app
mvn spring-boot:run

3. 前端

bash 复制代码
cd car-rental-frontend
npm install
npm run dev

浏览器访问:http://localhost:5173

4. 测试账号(init-data.sql 导入后)

用户名 密码 说明
zhangsan 123456 普通用户
admin 123456 管理员

也可使用手机号登录,如 13800138001 / 123456


主要接口一览

  • 认证POST /api/auth/loginPOST /api/auth/register
  • 用户GET /api/user/info
  • 车辆GET /api/cars/pageGET /api/cars/{id}GET /api/cars/available
  • 订单POST /api/ordersGET /api/orders/myGET /api/orders/{id}、取消/支付
  • 管理端GET /api/admin/stats/api/admin/cars 增删改查、/api/admin/orders 列表与状态更新

管理端接口需携带有效 JWT 且用户具备管理员角色(如 admin 账号)。

相关推荐
阿珊和她的猫1 小时前
浏览器跨页签数据共享方案
前端·javascript·vue.js·chrome
xkxnq2 小时前
第六阶段:Vue生态高级整合与优化(第82天)(Pinia高级用法)持久化方案(pinia-plugin-persistedstate)+ 安全存储策略
前端·vue.js·安全
橙露2 小时前
SpringBoot 接口性能优化:从接口慢到毫秒级响应实战
spring boot·后端·性能优化
RunsenLIu2 小时前
基于 Spring Boot 3 与 Vue 3 的家校互动平台
vue.js·spring boot·后端
前端 贾公子2 小时前
React 和 Vue 都离不开的表单验证库 async-validator 之策略模式的应用 (上)
vue.js·react.js·策略模式
阿珊和她的猫2 小时前
Session 与 Cookie 的对比:原理、使用场景与最佳实践
前端·javascript·vue.js
杜子不疼.2 小时前
SpringBoot + Vue 前后端分离项目实战:权限 + 工作流 + 报表
vue.js·spring boot·后端
昊坤说不出的梦2 小时前
梳理 Spring Boot Web 开发的几个概念
前端·spring boot·后端
阿珊和她的猫2 小时前
Chrome性能测试关键参数解析
前端·vue.js·chrome