这是一个前后端分离的电影管理和推荐系统,采用Vue.js + Spring Boot技术栈开发
主页是网站的门户,进行导航和slogan的展示,提供搜索的功能
可以根据关键词进行搜索(导演、演员),后端目前采用模糊查询的方式返回数据库中的记录
该页是电影信息展示和选择界面,仿豆瓣界面设计;可以根据类别、评分、时间进行电影的搜索;目前包含1500+电影信息(也就是爬200部封一次ip吧...)
爬虫可以参见 我的豆瓣爬虫
该界面主要是根据用户的浏览记录和收藏等信息对其进行个性化推荐
后台主要进行用户管理、角色配置以及电影信息管理
注:由于项目目前只是运行在本地,所以没有引入Nginx,部署到服务器中时,可以考虑使用Nginx进行代理
- Vue.js
- ElementUI
- axios
- Spring Boot
- MyBatis
- Apache Shiro
- Spring Data Redis
- MySQL
- Redis
- 后端
- 克隆项目到本地
git clone https://github.com/xiaott-ahh/five-six.git
- 启动Redis服务,默认端口6379,密码为空
- 创建数据库five-six,初始化脚本在src/main/resources文件夹下,包含电影相关和用户相关两个脚本;数据库初始化由配置类
DBInitializer完成,切换脚本的路径即可执行不同的脚本,不过电影初始化脚本只包含表结构,是没有数据的,需要结合爬虫导入 - 启动FiveSixServerApplication,项目运行在8443端口,端口号、数据库、MyBatis、Redis相关配置在application-dev.yml中
- 前端
- 克隆项目到本地
git clone https://github.com/xiaott-ahh/five-six-vue.git
- 进入项目根目录运行(在Idea中可以右键package.json->show npm script,双击serve,项目默认运行在8080端口
端口可以在vue.config.js中进行更改,跨域配置也在该文件中)
npm run serve
- 前后端都启动服务后,就可以进行交互了,登录用户名:xiaott,密码:123;也可以使用后端中InitAdmin.sql中初始化的其他用户登录,会有不同的角色和访问权限
注:本项目基于vue-cli3