智慧房屋租赁管理系统

智慧房屋租赁管理系统

基于 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 可后续在后台管理中增加页面与接口。
相关推荐
ℋᙚᵐⁱᒻᵉ鲸落6 小时前
移动端滑动手势冲突:overflow: auto导致外层横向滑动失效
前端·javascript·css·vue.js·html
默_笙8 小时前
🎃 前端学了 Next.js,后端该学啥?NestJS 就是 Node 版的蜜雪冰城
前端·javascript
前端snow9 小时前
ai agent --- 实现 openclaw 定时间效果
前端
码云之上9 小时前
换模型之后,Chatbot 为什么要自己做 compact?
前端·agent·前端工程化
এ慕ོ冬℘゜9 小时前
navigator 导航对象 BOM制作方法
javascript
星栈9 小时前
自定义 UI-UX-Pro-Max 的 CSV 知识库,把 AI 生成的后台拉回行业该有的样子
前端·agent·weui
研☆香9 小时前
简单的图片上传 删除 预览
前端
ITresearchGuest10 小时前
我用 AI 一小时写了一个世界杯数据可视化平台|前端 VibeCoding 初体验
前端·人工智能·信息可视化
慧一居士11 小时前
Vite项目中使用Less步骤,详细使用示例
前端·css
花间相见11 小时前
【LangChain组件03】—— LangChain Agents 执行与状态:工作流程与状态管理实战
java·前端·langchain