一、项目简介本项目是一套前后端分离的房屋租赁管理系统覆盖房源发布与检索、在线预约看房、租赁合同签订、租金订单生成与支付记录等房屋租赁全流程业务。系统分为普通用户端租客/房东与管理员端两大角色普通用户可完成注册登录、浏览房源、预约看房、查看合同/订单/支付记录管理员则负责平台整体的用户、房源、预约、合同、订单与支付管理。后端采用 Spring Boot 3 提供 RESTful API前端采用 Vue 3 构建单页应用二者通过 JWT 进行身份认证与授权数据存储基于 MySQL。二、技术栈技术说明后端框架Spring Boot 3.xORM 框架MyBatis-Plus分页插件、逻辑删除、字段自动填充权限认证JWTjjwt 自定义拦截器 AuthInterceptor密码加密Hutool BCrypt前端框架Vue 3Composition API script setup前端路由Vue Router 4路由守卫、动态导入状态管理Pinia用户状态存储UI 组件库Element Plus构建工具Vite数据库MySQL数据库名 house_rental文件上传Spring MultipartFile 本地存储UUID 重命名三、功能模块普通用户端用户注册与登录支持新用户通过用户名、密码、真实姓名、手机号完成注册注册后默认角色为普通用户登录接口校验账号状态禁用账号禁止登录及密码正确性登录成功后签发 JWT Token。个人资料维护查看当前登录用户基本信息用户名、姓名、手机、邮箱、头像支持修改真实姓名、手机号、邮箱及头像地址。密码修改在个人中心输入原密码与新密码进行密码重置后端校验原密码正确性后以 BCrypt 加密存储新密码。房源浏览与检索前台首页展示推荐房源列表房源列表支持按关键词标题/地址/描述、区域、价格区间、居室数量进行组合筛选仅展示状态为AVAILABLE的在租房源。房源详情查看查看房源完整信息包括标题、描述、地址、区域、租金、面积、室/厅数、楼层、朝向、装修情况、房屋类型、标签、封面图以及关联的房源图片列表按排序字段展示与房东姓名、联系电话。预约看房在房源详情页提交预约申请填写预约时间与留言预约创建后状态默认为PENDING用户可在我的预约中按状态筛选查看自己发起的预约记录。预约状态跟踪查看本人预约列表支持按状态筛选展示房源标题、预约时间、留言、状态及处理备注可查看房东对预约的同意/拒绝等处理结果。合同查询查看与本人相关的租赁合同列表支持按状态筛选展示合同编号、房源标题、起止日期、月租金、押金、支付方式、合同状态及租客/房东姓名。订单查询查看本人产生的租金/押金订单支持按状态筛选展示订单编号、关联合同编号、房源标题、金额、订单类型租金/押金/其他、应付日期及支付状态。支付记录查询查看本人订单对应的支付流水展示支付流水号、订单编号、房源标题、支付金额、支付方式微信/支付宝/银行卡/现金、支付时间及支付状态。管理员端管理概览以统计卡片形式展示平台用户总数、房源总数、预约总数、合同总数。用户管理分页查看全部用户列表支持按用户名/姓名/手机号关键词搜索可禁用或启用用户账号支持删除指定用户。房源管理分页查看平台全部房源不限状态支持按关键词、区域、价格区间、居室数、状态筛选可查看房源详情支持下架/上架房源修改房源状态可删除违规房源。预约管理分页查看平台所有预约记录展示房源标题、预约人姓名、电话、预约时间、留言、状态支持按状态筛选。合同管理分页查看平台全部租赁合同展示合同编号、房源、租客、房东、起止日期、月租金、状态支持对ACTIVE状态的合同执行终止操作状态改为TERMINATED。订单管理分页查看平台所有租赁订单展示订单编号、房源、租客、金额、订单类型、应付日期、支付状态支持按状态筛选。支付管理分页查看平台所有支付流水展示支付流水号、订单编号、房源、租客、金额、支付方式、支付时间、支付状态。四、项目总结本项目的技术亮点在于采用 Spring Boot 3 Vue 3 的前后端分离架构通过 JWT 实现无状态认证配合 MyBatis-Plus 的自动填充与分页能力显著提升了开发效率前端基于 Composition API 与 Pinia 管理全局状态配合 Vue Router 守卫实现路由级权限控制。业务上覆盖了房屋租赁从信息发布、预约看房到合同签订、订单支付的全链条闭环且各模块均支持状态流转与筛选查询适合作为毕业设计、课程设计的参考项目也可作为中小型租赁平台的二次开发基础。界面展示交付内容本项目为完整交付包含完整后端源码完整前端源码数据库初始化脚本SQL万字项目文档设计文档 / 论文可作课程设计、毕业设计参考获取完整源码完整前后端源码 数据库脚本 万字项目文档见 Gitee 仓库https://gitee.com/kangxihuang/src-K310