Hadoop智能房屋推荐系统 爬虫1w+ 协同过滤余弦函数推荐 代码+视频教程+文档

news/2025/2/8 19:26:10 标签: hadoop, 爬虫, 大数据

Hadoop智能房屋推荐系统 爬虫1w+ 协同过滤余弦函数推荐 带视频教程 毕设设计 课题设计

【Hadoop项目】

    1. data.csv上传到hadoop集群环境

    2. data.csv数据清洗

    3.MapReducer数据汇总处理, 将Reducer的结果数据保存到本地Mysql数据库中

    4. Springboot+Echarts+MySQL 显示数据分析结果

        分析数据维度如下:

        【房屋分类热度】【各分类下房屋数量及占比】【各城市房屋数量】

        【房屋分类评价均分】【房屋评价均分Top10】【搜索关键词词频统计】

        【用户收藏Top10】【房屋热度(点击次数)】

    5.运行环境  Idea  JDK  Maven  XShell  VM虚拟机  Mysql

    6.技术栈     springboot vue echarts Hadoop MarReduce mysql


 

【亮点功能】

    1.Springboot+Vue+Element-UI+Mysql前后端分离

    2.Echarts图表统计数据, 直观展示数据情况

    3.发表评论后,用户可以回复评论, 回复的评论可以被再次回复,  一级评论可以添加图片附件\

    4.爬虫房屋数据1万+

    5.推荐房屋列表展示, 使用协同过滤余弦函数 根据用户的评论, 收藏, 浏览历史数据进行推荐

    6.数据导出和导入(文件格式为excel)

    7.数据库优化: 使用 唯一索引, 联合索引, 外键关联, 视图,存储过程,函数,触发器

    8.开发本项目过程中遇到的问题以及解决方法(视频形式阐述)

【技术栈】

    1.后端开发语言java,框架Springboot, 开发工具IDEA

    2.前端技术vue, html, css, 开发工具IDEA或者VSCODE

    3.数据库使用mysql, 后端使用mybatis操作mysql, mybaits手写sql语句, 数据库表数量>10张

    4.JWT验证身份并授权, 自定义注解, 拦截器, 切面, 前后端分离跨域访问

    5.Element-UI, axios数据通讯交互, vue消息总线, flex样式布局, router路由

        wangEditor富文本编辑器, Echarts图表统计数据

    6.localStorage浏览器缓存存储用户信息 , 前端后端用户可同时在同一浏览器登录

    7.数据库优化: 使用 唯一索引, 联合索引, 外键关联, 视图,存储过程,函数,触发器

【功能列表】

后台功能

    1.登录, 修改登录用户的信息,  修改密码

    2.首页统计 统计用户数量, 房屋数量, 房屋浏览量, 评论总数量

    3.Echarts统计 用户注册统计(根据日期统计),  房屋类型占比统计

    4.管理员管理, 管理员增删改查, 批量删除

    5.用户管理, 用户增删改查, 批量删除

    6.房屋类型管理, 类型增删改查, 批量删除

    7.房屋管理, 房屋增删改查, 批量删除, 富文本编辑器(上传图片, 视频), 房屋指定多个类型, 房屋视频介绍

       房屋导出保存为excel格式, excel文件导入房屋数据

    8.评论管理, 评论删改查, 批量删除, 一级评论可修改(内容,评分,图片), 二级评论只能修改内容;

        二层展示评论内容, 一层展开显示所有二层评论; 删除一级评论连带删除所有二级评论, 删除二级评论只删除二级本身

    9.轮播图管理, 轮播图增删改查, 批量删除

    10.留言板管理, , 留言删改查, 批量删除, 一级留言可修改(内容,图片), 二级留言只能修改内容;

        二层展示留言内容, 一层展开显示所有二层留言; 删除一级留言连带删除所有二级留言, 删除二级留言只删除二级本身

    11.公告类型管理, 公告类型增删改查, 批量删除

    12.公告管理, 公告增删改查, 批量删除

    13.系统日志, 日志查删, 批量删除, 通过切面+注解方式记录日志

前台功能

    1.登录, 注册, 修改登录用户的信息,  修改密码

    2.轮播图展示

    3.热门房屋列表展示

       推荐房屋列表展示,推荐房屋根据所有用户的评论,收藏,浏览历史综合得分进行推荐 

    4.房屋详情展示, 如果后台上传视频,详情页面可以播放视频

    5.登录用户对进行 房屋收藏,取消收藏

    6.登录用户浏览房屋详情记录历史浏览足迹

    7.根据房屋关键字全局搜索房屋列表, 分类显示房屋列表

    8.登录用户对房屋进行评论(包含: 评论内容, 分数, 附件图片), 显示总评论数量

        用户对已经评论的内容进行二级回复评论(只能评论内容),

        用户可以把自己的评论删除, 如果删除一级评论,连带删除所有二级评论

        非登录可以查看用户对房屋的所有评论

    9.登录用户可以在留言板留言(包含: 留言内容, 附件图片), 显示总留言数量

        用户对已经留言的内容进行二级回复留言(只能留言内容),

        用户可以把自己的留言删除, 如果删除一级留言,连带删除所有二级留言

        非登录可以查看用户的所有留言

    10.公告通知轮播图,点击轮播图片,显示公告通知详情

        公告通知按公告类型进行片区展示, 每个片区显示7条相应类型的公告通知数据, 点击可以查看公告通知详情

        点击更多,分页列表显示相应类型下所有公告通知数据

    11.用户中心 菜单包含[个人信息][修改密码][我的收藏][我的足迹][我的评论][我的留言]

    12.菜单-个人信息  修改用户 昵称, 性别, 手机号码, 邮箱,头像    注: 手机号码, 邮箱不能与其他用户重复

    13.菜单-修改密码   修改用户密码信息, 修改完成后重新登陆

    14.菜单-我的收藏   根据 房屋 名称查询收藏, 查看收藏房屋详情, 删除收藏

    15.菜单-我的足迹   根据 房屋 名称查询历史足迹, 查看足迹房屋详情, 删除足迹

    16.菜单-我的评论   根据 房屋 和 评论内容 条件查询评论记录, 修改一级评论(内容,评分,附件图片), 修改二级评论(只能内容)

         删除一级评论连带删除所有二级评论, 删除二级评论只删除二级本身

    17.菜单-我的留言   根据 留言 条件查询留言记录, 修改一级留言(内容,附件图片), 修改二级留言(只能内容)

        删除一级留言连带删除所有二级留言, 删除二级留言只删除二级本身


http://www.niftyadmin.cn/n/5845228.html

相关文章

利用ETL工具进行数据挖掘

ETL的基本概念 数据抽取(Extraction):从不同源头系统中获取所需数据的步骤。比如从mysql中拿取数据就是一种简单的抽取动作,从API接口拿取数据也是。 数据转换(Transformation):清洗、整合和转…

【DeepSeek-R1训练笔记】随手记录一些训练log

背景说明 DeepSeek系列解读请移步我的上一篇blog:【完整版】DeepSeek-R1大模型学习笔记(架构、训练、Infra)代码仓库【科大的大四老哥太太太太太值得倾佩了】:https://github.com/Unakar/Logic-RLDeepSeek-R1-Zero复现文档&#…

【leetcode100】岛屿的周长

1、题目描述 给定一个 row x col 的二维网格地图 grid ,其中:grid[i][j] 1 表示陆地, grid[i][j] 0 表示水域。 网格中的格子 水平和垂直 方向相连(对角线方向不相连)。整个网格被水完全包围,但其中恰好…

Docker Desktop安装kubernetes时一直在Starting:Kubernetes failed to start

原因:由于墙的问题,导致拉取国外的K8s镜像失败 解决: 下载 k8s-for-docker-desktop 选中自己的kubernetes 版本 下载zip包 PowerShell运行load_images.ps1文件 重启docker kubernetes运行成功

【蓝桥杯嵌入式】4_key:单击+长按+双击

全部代码网盘自取 链接:https://pan.baidu.com/s/1PX2NCQxnADxYBQx5CsOgPA?pwd3ii2 提取码:3ii2 1、电路图 将4个按键的引脚设置为input,并将初始状态设置为Pull-up(上拉输入) 为解决按键抖动的问题,我们…

springboot项目的单元测试

文章目录 依赖编写单测代码一些注意点 依赖 依赖包含了 JUnit、Mockito、Spring Test 等常用的测试工具 <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><…

安卓/ios脚本开发按键精灵经验小分享

1. 程序的切换 我们经常碰到这样的需求&#xff1a;打开最近的应用列表&#xff0c;选取我们想要的程序。但是每个手机为了自己的风格&#xff0c;样式都有区别&#xff0c;甚至连列表的滑动方向都不一样&#xff0c;我们很难通过模拟操作来识别点击&#xff0c;那么我们做的只…

Java 线程池:7参数配置、4拒绝策略与执行流程详解

1. 为什么需要线程池&#xff1f; 在 Java 并发编程中&#xff0c;线程的创建和销毁是一项昂贵的操作。频繁地创建和销毁线程会带来较高的系统开销&#xff0c;甚至可能因线程数过多而导致 OOM&#xff08;OutOfMemoryError&#xff09; 或 CPU 过载。 线程池&#xff08;Thre…