基于 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 账号)。

相关推荐
Java开发的小李8 小时前
SpringBoot + Redis 实现分布式 Session 共享(解决多实例登录状态丢失问题)
spring boot·redis·分布式
阿丰资源12 小时前
SpringBoot+Vue实战:打造企业级在线文档管理系统
vue.js·spring boot·后端
0xDevNull12 小时前
Spring Boot 自动装配:从原理到实践
java·spring boot·后端
忆往wu前13 小时前
从0到1一步步拆解搭建,梳理一个 Vue3 简易图书后台全开发流程
前端·javascript·vue.js
光影少年14 小时前
大屏页面,一次多个请求,请求加密导致 点击 全局时间选择器 时出现卡顿咋解决(面板收起会延迟1~2秒)
前端·javascript·vue.js·学习·前端框架·echarts·reactjs
Mr.mjw14 小时前
vue中封装一个环形进度条组件,根据外部盒子大小自适应变化
前端·javascript·vue.js
a8a30214 小时前
Laravel9.x新特性全解析
运维·spring boot·nginx
唯火锅不可辜负14 小时前
uniapp开发公众号订阅功能踩坑小记
前端·vue.js
像我这样帅的人丶你还15 小时前
前端监控体系与实践(二):全局监控
前端·javascript·vue.js
前端那点事15 小时前
Vue3 超全复盘!30+前端高频核心知识点(开发+面试全覆盖)
前端·vue.js