智慧房屋租赁管理系统

智慧房屋租赁管理系统

基于 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 可后续在后台管理中增加页面与接口。
相关推荐
沸点小助手1 分钟前
「国产龙虾谁能打过OpenClaw & 你敢让微信龙虾碰代码吗」沸点获奖名单公示|本周互动话题上新🎊
前端·后端·面试
skywalk81633 分钟前
请学习kotti的前端(kotti其实是没有分离的前端的)实现,做到形似kotti那样的前端页面。
前端·学习
UI设计兰亭妙微16 分钟前
兰亭妙微加载体验设计白皮书:从骨架屏到后台加载的全场景优化策略
前端·b端界面设计·ui设计公司
逆光如雪20 分钟前
移动端卡片边框怎么做高级?我用 CSS 实现了设计师的刁钻要求
前端·css·vue.js
scan72422 分钟前
龙虾读取session历史消息
java·前端·数据库
莹宝思密达27 分钟前
地图显示西安经济开发区边界线-2023.12
前端·vue.js·数据可视化
小龙报37 分钟前
【Coze-AI智能体平台】Coze OpenAPI 开发手册:鉴权、接口调用与 SDK 实践
javascript·人工智能·python·深度学习·microsoft·文心一言·开源软件
lizhongxuan42 分钟前
LLM Wiki:让大模型替你打理知识库的完整指南
前端·后端·面试
神の愛43 分钟前
利用json-to-ts工具进行转换,放置在typeScript.ts文件中
javascript·typescript·json
宇擎智脑科技1 小时前
Claude Code 源码分析(七):终端 UI 工程 —— 用 React Ink 构建工业级命令行界面
前端·人工智能·react.js·ui·claude code