基于 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/login、POST /api/auth/register
  • 用户 :GET /api/user/info
  • 车辆 :GET /api/cars/page、GET /api/cars/{id}、GET /api/cars/available
  • 订单 :POST /api/orders、GET /api/orders/my、GET /api/orders/{id}、取消/支付
  • 管理端 :GET /api/admin/stats、/api/admin/cars 增删改查、/api/admin/orders 列表与状态更新

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

相关推荐
码艺-Alimjan4 小时前
Tauri 源码备份 · 打包 & 解压 总结,源码收集之路
前端·javascript·vue.js
凤山老林5 小时前
Spring Boot 接入国密 SM2/SM3/SM4 的一些实践记录
spring boot·后端·python
伯恩bourne6 小时前
Spring Boot Bean 注册的两种方式:@Component 家族 vs @Configuration + @Bean
java·spring boot·后端
省钱兄--zs6 小时前
深圳24小时自助健身房软硬件解决方案实战指南与开发流程详解
java·数据仓库·spring boot·小程序·架构
顽疲7 小时前
Java vue 养老系统源码详解:月账单 care_month_bill 与 Quartz 扣费 Job 实践
java·开发语言·vue.js·vue养老·springboot养老·java养老
电子元件小说家7 小时前
AI边缘计算与汽车电子电源设计观察:5x5mm屏蔽功率电感选型与验证建议
人工智能·汽车·边缘计算
毕业设计7038 小时前
(免费领源码)基于node的学生公寓管理系统06412- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
vue.js·mysql·node.js·maven·mybatis·express·b/s
古夕8 小时前
地址变了,页面是空的:一次 Vue Router 菜单切换复盘
前端·vue.js
SGS官方9 小时前
SGS为紫光国芯颁发ISO 26262:2018汽车功能安全ASIL D流程证书
安全·汽车·检测认证机构·sgs
silvamux_9 小时前
Spring Boot 调用大模型 api 最小可跑教程
java·spring boot·后端