智慧房屋租赁管理系统

智慧房屋租赁管理系统

基于 Spring Boot 3.2 + Vue 3 + Element Plus + MySQL 8 的前后端分离房屋租赁系统。

项目截图

技术栈

层级 技术
后端 JDK 17, Spring Boot 3.2, Spring Security, JWT, MyBatis Plus, MySQL 8, Redis, MinIO(可选), Swagger
前端 Vue 3, Vite, Element Plus, Vue Router 4, Pinia, Axios, ECharts

功能模块

  • 用户:注册/登录(手机、邮箱、用户名)、JWT+Refresh Token、角色(管理员/房东/租客)、个人资料与头像
  • 房源:发布/编辑、多图上传、状态(待审核/上架/下架/已出租)、搜索筛选(城市、价格、户型、面积)
  • 预约看房:租客预约、房东确认/拒绝
  • 订单:创建订单、待支付→已支付→履约中→已完成、模拟支付、取消
  • 消息:系统消息、站内信、未读数量
  • 管理后台:数据统计、用户禁用/启用、房源审核、公告/轮播(数据表已建)

快速开始

1. 数据库

创建库并导入表结构与初始数据:

bash 复制代码
mysql -u root -p < backend/src/main/resources/db/schema.sql
mysql -u root -p < backend/src/main/resources/db/data.sql

或手动执行 backend/src/main/resources/db/schema.sqldata.sql

初始账号(密码均为 123456):

账号 角色
admin 管理员
landlord1 / landlord2 房东
tenant1 / tenant2 租客

2. 后端

bash 复制代码
cd backend
# 修改 application.yml 中 datasource、redis 等配置
mvn spring-boot:run

3. 前端

bash 复制代码
cd frontend
npm install
npm run dev

访问 http://localhost:5173 ,前端通过 Vite 代理将 /api 转发到后端 8080。

项目结构

复制代码
HouseRentalSystem/
├── backend/                 # Spring Boot
│   ├── src/main/java/com/smart/rental/
│   │   ├── common/          # 统一结果、异常处理
│   │   ├── config/          # 安全、JWT、MinIO、MyBatis
│   │   ├── controller/     # 认证、用户、房源、订单、预约、消息、上传、公开、管理
│   │   ├── entity/         # 实体
│   │   ├── mapper/         # MyBatis Plus Mapper
│   │   ├── security/       # JWT 过滤与工具
│   │   └── service/        # 业务逻辑
│   └── src/main/resources/
│       ├── application.yml
│       └── db/             # schema.sql, data.sql
├── frontend/                # Vue 3 + Vite
│   ├── src/
│   │   ├── api/            # 请求封装与各模块 API
│   │   ├── router/         # 路由与鉴权
│   │   ├── stores/        # Pinia(用户状态)
│   │   └── views/         # 登录、首页、房源、订单、预约、消息、个人中心、管理后台
│   └── vite.config.js      # 代理 /api -> 8080
└── README.md

说明

  • 支付为模拟,仅更新订单状态与流水记录。
  • 合同生成与 PDF 导出、续租提醒等可在现有订单/消息模块上扩展。
  • 轮播图、公告已建表并预留接口,管理端 CRUD 可后续在后台管理中增加页面与接口。
相关推荐
naildingding7 小时前
3-ts接口 Interface
前端·typescript
mONESY7 小时前
JavaScript 栈、队列、数组与链表核心知识点总结
javascript·面试
小小前端仔LC7 小时前
Node.js + LangChain + React:搭建个人知识库(六)- “吃什么”项目实战:从700+菜谱入库到Taro H5端JSON渲染
前端·后端
ZengLiangYi7 小时前
TypeScript 项目配置:tsconfig、ESM、路径别名
javascript·typescript·aigc
晓13137 小时前
【Cocos Creator 3.x】篇——第二章 入门
前端·javascript·游戏引擎
想要成为糕糕手7 小时前
前端必修课:JavaScript 数组与数据结构底层逻辑全解析
javascript·数据结构·面试
程序员黑豆7 小时前
AI全栈开发之Java:怎么配置Java环境变量
前端·后端·ai编程
xiaofeichaichai8 小时前
React Hooks
前端·javascript·react.js
数据知道8 小时前
C++ 层拦截:修改 Blink 引擎与 V8 绑定的底层逻辑
javascript·数据采集·指纹浏览器·风控
问心无愧05138 小时前
ctf show web入门110
前端·笔记