使用Java+Springboot+Mysql开发个性化租房推荐系统 在线房屋租赁推荐系统 基于机器学习、深度学习、人工智能推荐 基于协同过滤推荐算法 爬虫 可视化数据分析HouseRecommendSys

一、项目简介

1、开发工具和使用技术

IDEA/Eclipse,jdk1.8,mysql5.5/mysql8,navicat数据库管理工具,springboot开发框架,spring+springmvc+mybatis框架,thymeleaf视图渲染模板,html页面,javascript脚本,jquery脚本,bootstrap前端框架,echarts图表组件等。

2、实现功能

前台用户首页地址:http://localhost:8080/
后台管理员首页地址:http://localhost:8080/admin
管理员账号:admin 管理员密码:admin

前台用户包含:注册、登录、退出登录、浏览房屋、搜索房屋、信息修改、密码修改、房屋评分、房屋收藏、房屋评论、用户留言、排行榜、热点推荐、个性化推荐房屋、出租房屋管理等功能;

后台管理员包含:数据分析、用户管理、房屋管理、评分管理、收藏管理、评论管理、浏览记录管理、留言管理、管理员管理等。

个性化推荐功能:
游客:热点推荐(根据房屋总评分降序推荐);
登录用户:基于用户的协同过滤推荐算法(根据评分数据),如果没有推荐结果,
采用热点推荐(推荐总评分较高的房屋,同时是登录用户没有评分的)。

人气榜单:查询浏览数量最多的房屋,同时不包括当前登录用户浏览过的房屋

相关推荐:
推荐与当前房屋相同厅室下收藏量较高的房屋,同时不包括当前登录用户收藏过的房屋。

房屋数据来源:爬取58同城房屋数据

3、开发步骤

一、需求分析
主要是分析需要实现的功能、确定开发工具及技术等。例如:前台用户需要有登录、注册、注销、搜索房屋、房屋评分、个性化推荐等,后台管理员需要有登录、注销、数据统计、用户管理、房屋管理、房屋类型管理等,个性化推荐使用基于用户的协同过滤推荐算法等。Java开发语言,mysql数据库,springboot开发框架等。
二、数据库设计
数据库设计使用navicat数据库管理工具,可通过sql语句脚本生成数据库表,也可以直接操作新建表设计表等。注意主外键关联设计,例如:评分记录表需要外键关联用户表和房屋表。
三、页面设计
使用bootstrap前端框架,通过学习https://v3.bootcss.com/官方文档和开发案例来设计页面。
四、开发框架搭建
springboot是spring家族中的一个全新框架,用来简化spring程序的创建和开发过程。在以往我们通过SpringMVC+Spring+Mybatis框架进行开发的时候,我们需要配置web.xml,spring配置,mybatis配置,然后整合在一起,而springboot抛弃了繁琐的xml配置过程,采用大量默认的配置来简化我们的spring开发过程。

SpringBoot化繁为简,使开发变得更加的简单迅速。
使用idea创建一个maven项目,然后在pom.xml中配置springboot框架开发依赖(spring、springmvc、mybatis等),接着就是创建controller、service、mapper、entity等,最后就是具体功能的实现。
五、功能开发
首先是进行前台用户首页的开发,其次是房屋详情,然后是用户注册、登录等,接着是用户的评分、修改信息等,然后是进行管理员功能的开发,最后是进行前台用户的个性化推荐功能实现。
六、系统测试
主要是进行bug修改,推荐算法测试。

二、项目展示





























三、代码展示及运行结果









专业长期研究java、python推荐算法(基于内容、协同过滤、关联规则、机器学习等)、大数据等,欢迎留言、私信互相交流学习,后续会不断更新,欢迎关注。