0 前言

总项目名称:电影推荐系统

项目采用前后端分离

  1. 前端:

  2. 后端:
  3. 数据爬虫:
    • 简介:爬取项目所需的电影基本信息数据和用户评价数据等并存储。
    • 仓库地址:正在路上...
    • 技术栈:正在路上...

系统功能模块总览:

1 项目前端介绍

项目地址:movie_recommendation_system_vue

1.1 项目启动和编译

1.1.1 项目启动

Compiles and hot-reloads for development:

npm run serve

1.1.2 项目编译

Compiles and minifies for production:

npm run build

1.2 前端技术栈

  • Vue3框架
  • Element Plus组件库(基于 Vue 3,面向设计师和开发者的组件库)
  • Axios库(一个基于 promise 的网络请求库)
  • Echarts库(一个基于 JavaScript 的开源可视化图表库)
  • vue-copper库(基于vue的优雅图片裁剪插件)
  • ...

1.3 功能模块前端界面展示

1.3.1 基础功能模块

主要是游客可以查看的页面信息。

  1. 主页面



2. 电影分类

  1. 搜索电影

  1. 查看电影详情

1.3.2 用户模块

主要包括用户登录、注册、修改个人信息、账号设置、查看电影评价、进行电影评价等功能。

  1. 用户登录

  1. 用户注册

  1. 修改个人信息(包括头像、昵称、性别、电影特征偏好等)

  1. 账号设置(包括密码修改、绑定邮箱等)

  1. 查看电影评价

    • 用户点赞:点赞功能在前端通过节流,来防止用户恶意点击。
    • 滚动置底加载:当滚轮滚动至底部时,加载新的评论。

  1. 进行电影评价

  1. 用户主页

1.3.3 特色功能展示

  1. 电影星球

主要展示用户看过电影和系统推荐电影之间的关系,用户可以点击电影结点,查看电影的详情页面。

  1. 评论词云图

将电影评论进行分词后,去除无关符号和词语,通过词云图展示电影的一些关键字信息。

1.3.4 界面自适应实现

  1. 手机端展示


  1. 平板端展示


2 项目后端介绍

仓库地址:movie_recommendation_system_server

2.1 项目打包部署

2.1.1 项目打包

IDEA右边栏中选择Maven → 按住Ctrl → 选择Lifecycle下的cleanpackage → 点击上方的绿色运行按钮 → 等待项目打包成jar包 → 打包好的jar包会在项目的target目录中

2.1.2 项目部署

  1. 将打包好的项目jar包上传到自己的服务器上。

  2. 通过以下命令时项目在服务器后台运行,并且输出日志到out.txt文件(可修改):

    nohup java -jar 项目名.jar >out.txt &

2.2 后端功能实现

  1. 用户登录、注册、个人信息修改等接口实现。
  2. 基于内容推荐和基于用户协同过滤推荐等推荐算法实现,整合两种算法实现混合式推荐,并解决冷启动问题。
  3. 查询各种电影信息接口实现(如电影搜索、推荐给用户的电影信息查询等)。
  4. 用户点赞功接口实现(点赞信息暂存,再按时持久化到数据库)。
  5. ...

3 数据爬虫介绍

  • 简介:爬取项目所需的电影基本信息数据和用户评价数据等并存储。
  • 仓库地址:正在路上...
  • 技术栈:正在路上...

转载声明:该博客来源于vanish丶的博客园

【电影推荐系统】Spring Boot + Vue3 前后端分离项目的更多相关文章

  1. 喜大普奔,两个开源的 Spring Boot + Vue 前后端分离项目可以在线体验了

    折腾了一周的域名备案昨天终于搞定了. 松哥第一时间想到赶紧把微人事和 V 部落部署上去,我知道很多小伙伴已经等不及了. 1. 也曾经上过线 其实这两个项目当时刚做好的时候,我就把它们部署到服务器上了, ...

  2. 两个开源的 Spring Boot + Vue 前后端分离项目

    折腾了一周的域名备案昨天终于搞定了. 松哥第一时间想到赶紧把微人事和 V 部落部署上去,我知道很多小伙伴已经等不及了. 1. 也曾经上过线 其实这两个项目当时刚做好的时候,我就把它们部署到服务器上了, ...

  3. Spring Boot + Vue 前后端分离开发,前端网络请求封装与配置

    前端网络访问,主流方案就是 Ajax,Vue 也不例外,在 Vue2.0 之前,网络访问较多的采用 vue-resources,Vue2.0 之后,官方不再建议使用 vue-resources ,这个 ...

  4. 如何使用Spring Securiry实现前后端分离项目的登录功能

    如果不是前后端分离项目,使用SpringSecurity做登录功能会很省心,只要简单的几项配置,便可以轻松完成登录成功失败的处理,当访问需要认证的页面时,可以自动重定向到登录页面.但是前后端分离的项目 ...

  5. 一个实际的案例介绍Spring Boot + Vue 前后端分离

    介绍 最近在工作中做个新项目,后端选用Spring Boot,前端选用Vue技术.众所周知现在开发都是前后端分离,本文就将介绍一种前后端分离方式. 常规的开发方式 采用Spring Boot 开发项目 ...

  6. Spring Boot + Vue 前后端分离开发,权限管理的一点思路

    在传统的前后端不分的开发中,权限管理主要通过过滤器或者拦截器来进行(权限管理框架本身也是通过过滤器来实现功能),如果用户不具备某一个角色或者某一个权限,则无法访问某一个页面. 但是在前后端分离中,页面 ...

  7. Keycloak快速上手指南,只需10分钟即可接入Spring Boot/Vue前后端分离应用实现SSO单点登录

    登录及身份认证是现代web应用最基本的功能之一,对于企业内部的系统,多个系统往往希望有一套SSO服务对企业用户的登录及身份认证进行统一的管理,提升用户同时使用多个系统的体验,Keycloak正是为此种 ...

  8. 基于spring security 实现前后端分离项目权限控制

    前后端分离的项目,前端有菜单(menu),后端有API(backendApi),一个menu对应的页面有N个API接口来支持,本文介绍如何基于spring security实现前后端的同步权限控制. ...

  9. Spring Boot + Vue 前后端分离,两种文件上传方式总结

    在Vue.js 中,如果网络请求使用 axios ,并且使用了 ElementUI 库,那么一般来说,文件上传有两种不同的实现方案: 通过 Ajax 实现文件上传 通过 ElementUI 里边的 U ...

  10. spring boot 过滤器 前后端分离跨域sessionId不一致

      import org.springframework.stereotype.Component; import javax.servlet.*; import javax.servlet.http ...

随机推荐

  1. Python ChatGPT Telegram Bot

    注册 这里如何注册我就不说明了,大家自行去注册,主要是现在GPT的基本上已经备用很多了,导致了接码的价格也上涨了,而且使用token的话,其实还是很快可以用完免费的18美金: 接码:https://s ...

  2. 《最新出炉》系列初窥篇-Python+Playwright自动化测试-16-处理模态对话框弹窗

    1.简介 我们在日常工作中,会经常遇到弹出警告框的问题,弹框无法绕过,必须处理才可以执行后续的测试,所以弹框处理也是我们必须掌握的一个知识.宏哥在java+selenium系列文章中介绍过这部分内容. ...

  3. Harry Potter RPG_1

    RPG--Harry Potter 博主最近迷上了<Harry Potter> So 我制作了一款RPG对话模拟游戏, 目前主线以进行到了分院以后: 有兴趣的小伙伴可以看看,能点个关注就更 ...

  4. 卷积导向快速傅里叶变换(FFT/NTT)教程

    1 Forewords 卷积,但不止卷积 - FFT 漫谈 先有 FT,再有 DFT,才有 FFT 时频转换是最初的用途 发现单位根优秀性质,James Cooley, John Tukey 发明现代 ...

  5. CF 下分记录

    7.27 edu152 \(+173=2048\) B 没细看数据范围 WA 了一次 D 没判 \(i-1=0\) WA 了一次 E. Max to the Right of Min 考虑增大右端点, ...

  6. Trino容错模式深度测评与思考

    本文分享自华为云社区<走向批处理-交互式分析一体化: Trino容错模式深度测评与思考>,作者:HetuEngine九级代言 . 本文系华为云大数据研发团队原创,原创作者:文博,梦月 1 ...

  7. Ubuntu上解决快捷键与idea快捷键冲突

    Ubuntu上解决快捷键与idea快捷键冲突 一.ubuntu 本身系统导致,需要修改 ubuntu 快捷键 解决方案: 设置 按钮→系统设置→硬件选项区域中的"键盘"→切换到&q ...

  8. 手撕Vuex-Vuex实现原理分析

    本章节主要围绕着手撕 Vuex,那么在手撕之前,先来回顾一下 Vuex 的基本使用. 创建一个 Vuex 项目,我这里采用 vue-cli 创建一个项目,然后安装 Vuex. vue create v ...

  9. 持续集成(CI)、自动化构建和自动化测试--初探

    转自:http://blog.csdn.net/adparking/article/details/5796532 此文章是为了总结前一段时间由于Maven2的学习而引起的一个持续集成的学习. 一.什 ...

  10. Ocserv整合Radius认证

    目前社区主流SSL VPN有两个分支:openvpn和ocserv,通过官网和检索到的资料对比前者服务端比较强大,后者客户端和移动端支持更好,二者并不兼容: 另外前者商业化封装更好,偏向商业化,后者对 ...