使用Java+SSM(Spring+SpringMVC+Mybatis)实现在线电影推荐网 电影推荐系统 豆瓣电影爬虫 基于用户、物品的协同过滤推荐算法 机器学习、人工智能、大数据开发MovieRecommendWeb
一、项目简介
1、开发工具和使用技术
MyEclipse10/Eclipse/IDEA,jdk1.8,mysql5.5/mysql8,navicat数据库管理工具,tomcat,SSM(spring+springmvc+mybatis)开发框架,jsp页面,javascript脚本,jquery脚本,bootstrap前端框架(用户端),layui前端框架(管理员端),layer弹窗组件等。
2、实现功能
前台用户包含:注册、登录、注销、浏览电影、搜索电影、信息修改、密码修改、电影评分、电影收藏、电影评论、电影播放、排行榜、热点推荐、个性化推荐电影等功能;
后台管理员包含:数据统计、用户管理、电影管理、电影类型管理、评分管理、收藏管理、评论管理、浏览记录管理、播放记录管理等。
个性化推荐功能:
排行榜:根据每种电影类型下的浏览数量降序推荐电影;
为你推荐:
游客:热点推荐(根据电影总评分和总收藏数量降序推荐)
登录用户:
基于用户的协同过滤推荐算法(根据评分数据),如果没有推荐结果,采用热点推荐(根据电影总评分降序推荐,同时是登录用户没有评分的);
基于项目的协同过滤推荐算法(根据收藏数据),如果没有推荐结果,采用热点推荐(根据电影收藏数量降序推荐,同时是登录用户没有收藏的)。
相关推荐:
与当前电影相同类型且评分较高的电影,同时是当前用户没有评分的电影。
电影数据来源:爬取豆瓣电影数据
3、开发步骤
一、需求分析
主要是分析需要实现的功能、确定开发工具及技术等。例如:前台用户需要有登录、注册、注销、搜索电影、电影评分、个性化推荐等,后台管理员需要有登录、注销、数据统计、用户管理、电影管理、电影类型管理等,个性化推荐使用基于用户的协同过滤推荐算法等。Java开发语言,mysql数据库,ssm开发框架等。
二、数据库设计
数据库设计使用navicat数据库管理工具,可通过sql语句脚本生成数据库表,也可以直接操作新建表设计表等。注意主外键关联设计,例如:评分记录表需要外键关联用户表和电影表。
三、页面设计
用户端:使用bootstrap前端框架,通过学习https://v3.bootcss.com/官方文档和开发案例来设计页面。
管理员端:使用layui前端框架,通过学习https://layuion.com/官方文档和开发案例来设计页面。
四、开发框架搭建
SSM开发框架(spring+springmvc+mybatis)搭建,首先是jar包的导入,可以在https://mvnrepository.com/官网(存储jar包的仓库网站)搜索找到对应的jar包下载并导入项目,然后是开发框架配置文件的编写,编写规则主要是通过框架官方文档进行来发。
五、功能开发
首先是进行前台用户首页的开发,其次是电影详情,然后是用户注册、登录等,接着是用户的评分、修改信息等,然后是进行管理员功能的开发,最后是进行前台用户的个性化推荐功能实现。
六、系统测试
主要是进行bug修改,推荐算法测试。
二、项目展示
三、代码展示及运行结果