【电影推荐系统】Spring Boot + Vue3 前后端分离项目
0 前言
总项目名称:电影推荐系统
项目采用前后端分离:
- 前端:
- 仓库地址:movie_recommendation_system_vue
- 技术栈:
Vue3+Element Plus+axios等
- 后端:
- 仓库地址:movie_recommendation_system_server
- 技术栈:
Spring Boot+Spring Security+Redis+MyBatis-Plus等
- 数据爬虫:
- 简介:爬取项目所需的电影基本信息数据和用户评价数据等并存储。
- 仓库地址:正在路上...
- 技术栈:正在路上...
系统功能模块总览:

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 基础功能模块
主要是游客可以查看的页面信息。
- 主页面

2. 电影分类

- 搜索电影

- 查看电影详情

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

- 用户注册

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

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

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

- 进行电影评价

- 用户主页

1.3.3 特色功能展示
- 电影星球
主要展示用户看过电影和系统推荐电影之间的关系,用户可以点击电影结点,查看电影的详情页面。
- 评论词云图
将电影评论进行分词后,去除无关符号和词语,通过词云图展示电影的一些关键字信息。

1.3.4 界面自适应实现
- 手机端展示


- 平板端展示


2 项目后端介绍
仓库地址:movie_recommendation_system_server
2.1 项目打包部署
2.1.1 项目打包
IDEA右边栏中选择Maven → 按住Ctrl → 选择Lifecycle下的clean和package → 点击上方的绿色运行按钮 → 等待项目打包成jar包 → 打包好的jar包会在项目的target目录中

2.1.2 项目部署
将打包好的
项目jar包上传到自己的服务器上。通过以下命令时项目在服务器后台运行,并且输出日志到
out.txt文件(可修改):nohup java -jar 项目名.jar >out.txt &
2.2 后端功能实现
- 用户登录、注册、个人信息修改等接口实现。
- 基于内容推荐和基于用户协同过滤推荐等推荐算法实现,整合两种算法实现混合式推荐,并解决冷启动问题。
- 查询各种电影信息接口实现(如电影搜索、推荐给用户的电影信息查询等)。
- 用户点赞功接口实现(点赞信息暂存,再按时持久化到数据库)。
- ...
3 数据爬虫介绍
- 简介:爬取项目所需的电影基本信息数据和用户评价数据等并存储。
- 仓库地址:正在路上...
- 技术栈:正在路上...
转载声明:该博客来源于vanish丶的博客园
【电影推荐系统】Spring Boot + Vue3 前后端分离项目的更多相关文章
- 喜大普奔,两个开源的 Spring Boot + Vue 前后端分离项目可以在线体验了
折腾了一周的域名备案昨天终于搞定了. 松哥第一时间想到赶紧把微人事和 V 部落部署上去,我知道很多小伙伴已经等不及了. 1. 也曾经上过线 其实这两个项目当时刚做好的时候,我就把它们部署到服务器上了, ...
- 两个开源的 Spring Boot + Vue 前后端分离项目
折腾了一周的域名备案昨天终于搞定了. 松哥第一时间想到赶紧把微人事和 V 部落部署上去,我知道很多小伙伴已经等不及了. 1. 也曾经上过线 其实这两个项目当时刚做好的时候,我就把它们部署到服务器上了, ...
- Spring Boot + Vue 前后端分离开发,前端网络请求封装与配置
前端网络访问,主流方案就是 Ajax,Vue 也不例外,在 Vue2.0 之前,网络访问较多的采用 vue-resources,Vue2.0 之后,官方不再建议使用 vue-resources ,这个 ...
- 如何使用Spring Securiry实现前后端分离项目的登录功能
如果不是前后端分离项目,使用SpringSecurity做登录功能会很省心,只要简单的几项配置,便可以轻松完成登录成功失败的处理,当访问需要认证的页面时,可以自动重定向到登录页面.但是前后端分离的项目 ...
- 一个实际的案例介绍Spring Boot + Vue 前后端分离
介绍 最近在工作中做个新项目,后端选用Spring Boot,前端选用Vue技术.众所周知现在开发都是前后端分离,本文就将介绍一种前后端分离方式. 常规的开发方式 采用Spring Boot 开发项目 ...
- Spring Boot + Vue 前后端分离开发,权限管理的一点思路
在传统的前后端不分的开发中,权限管理主要通过过滤器或者拦截器来进行(权限管理框架本身也是通过过滤器来实现功能),如果用户不具备某一个角色或者某一个权限,则无法访问某一个页面. 但是在前后端分离中,页面 ...
- Keycloak快速上手指南,只需10分钟即可接入Spring Boot/Vue前后端分离应用实现SSO单点登录
登录及身份认证是现代web应用最基本的功能之一,对于企业内部的系统,多个系统往往希望有一套SSO服务对企业用户的登录及身份认证进行统一的管理,提升用户同时使用多个系统的体验,Keycloak正是为此种 ...
- 基于spring security 实现前后端分离项目权限控制
前后端分离的项目,前端有菜单(menu),后端有API(backendApi),一个menu对应的页面有N个API接口来支持,本文介绍如何基于spring security实现前后端的同步权限控制. ...
- Spring Boot + Vue 前后端分离,两种文件上传方式总结
在Vue.js 中,如果网络请求使用 axios ,并且使用了 ElementUI 库,那么一般来说,文件上传有两种不同的实现方案: 通过 Ajax 实现文件上传 通过 ElementUI 里边的 U ...
- spring boot 过滤器 前后端分离跨域sessionId不一致
import org.springframework.stereotype.Component; import javax.servlet.*; import javax.servlet.http ...
随机推荐
- Oracle字符串函数-Translate()总结
Oracle的Translate(expr,from_string,to_string)是字符串操作函数,实现from_string,to_string字符的一 一替换 1)典型示例: select ...
- umich cv-2-1
UMICH CV Linear Classifiers 对于使用线性分类器来进行图片分类,我们可以给出这样的参数化方法: 而对于这样一个式子,我们怎么去理解呢? 首先从代数的角度,这个f(x,W)就是 ...
- C静态库的创建与使用--为什么要引入静态库?
C源程序需要经过预处理.编译.汇编几个阶段,得到各自源文件对应的可重定位目标文件,可重定位目标文件就是各个源文件的二进制机器代码,一般是.o格式.比如:util1.c.util2.c及main.c三个 ...
- Java IO 与 NIO:高效的输入输出操作探究
引言 输入输出(IO)是任何编程语言中的核心概念,而在Java中,IO操作更是应用程序成功运行的基石.随着计算机系统变得越来越复杂,对IO的要求也日益增加.在本文中,我们将探讨Java IO和非阻塞I ...
- Unity - UIWidgets 5. Redux接入(一) 基本接入
对响应式的数据组织结构不太熟, 直接尝试Redux走起 参考资料 Redux的基本概念 state 一个字段用于存储状态 存储state的地方称为"store", 类似Model\ ...
- 监控报警体系:Prometheus和Grafana
总体 prometheus全链路监控报警,在当今云原生时代可观测领域,Prometheus + Grafana 成为可观测性事实标准. 采集数据:运维团队可以使用 Prometheus 监控云原生 K ...
- Shader学习笔记 (一) :利用shader在一个面绘制出圆
在各种游戏中,想必大家一定和我一样总是惊叹于游戏画面的各种炫酷的特效. 作为游戏开发中单独列出的一个职业TA(Technology Art),他们会利用GLSL或者HLSL等着色器语言绘制出一幅幅美丽 ...
- 创造力的起源《The Origins of Creativity》
接近创造力 创造力是对原创的追求,其动力是人类对于新奇事物的钟爱. 了解创造力需要三个层次的思考. 1.What(如何定义这种现象) 2.Question(发问,他是如何出现的,导致其出现的最初原因是 ...
- C# 12 Blazor入门教程
Blazor简介 Blazor 是由Microsoft开发的一款基于.NET的开源交互式Web UI框架.Blazor使开发人员能够使用C#和HTML建立全堆栈的单页应用程序,并避免使用JavaScr ...
- UIPath流程控制
应当仔细地观察,为的是理解:应当努力地理解,为的是行动. UIPath程序中流程控制主要包括条件语句.循环语句以及中断语句.下面我们一一学习这些语句在RPA流程设计中的使用. 1. 条件判断 if ...