基于Hadoop的豆瓣电子图书推荐系统
相关技术栈本系统采用 B/S 架构进行设计与开发后端基于 Java 语言使用 Spring Boot 2.2.2 框架搭建 RESTful 接口服务数据库采用 MySQL 存储业务数据前端使用 Vue 2 框架配合 Element UI 组件库构建管理端与用户端界面持久层使用 MyBatis-Plus权限认证采用 Apache Shiro。系统分为管理端与用户端两部分管理员通过后台管理系统进行数据维护与统计分析普通用户通过前台网站浏览豆瓣高分图书、获取智能推荐并进行收藏评论等互动操作。1、Spring Boot 框架Spring Boot 是本系统的核心后端框架。它基于 Spring 生态通过自动配置和起步依赖大幅简化了项目搭建过程。本系统使用 Spring Boot 2.2.2.RELEASE 版本集成spring-boot-starter-web提供 Web 服务能力配合 MyBatis-Plus 2.3 完成数据库 CRUD 操作使用 Apache Shiro 1.3.2 实现登录鉴权与 Token 校验。开发者只需配置application.yml中的数据源信息MySQL 连接地址、用户名、密码即可快速启动后端服务默认运行在 8080 端口上下文路径为/springboot28r41260。2、MySQL 数据库MySQL 是本系统的数据存储核心用于保存用户信息、豆瓣高分图书数据、收藏记录、评论内容、论坛帖子、通知公告等业务数据。系统使用mysql-connector-java驱动连接 MySQL 8.0 数据库数据库脚本位于db/springboot28r41260.sql包含完整的表结构与初始数据。通过 MyBatis-Plus 的实体映射与 XML Mapper实现对象关系映射支持分页查询、条件筛选、分组统计等复杂数据操作。3、Vue 框架Vue 是本系统的前端开发框架管理端与用户端均基于 Vue 2 构建。管理端使用 Vue 2.6.10 Element UI 2.13.0集成 ECharts 5.4.1 实现数据可视化看板用户端使用 Vue 2.6.11 Element UI 2.15.5配合 Vue Router 实现单页应用路由跳转。前端通过 Axios 向后端发起 HTTP 请求采用组件化开发模式将登录页、首页、图书列表、详情页、个人中心等模块拆分为独立.vue组件便于维护与扩展。4、B/S 结构B/SBrowser/Server浏览器/服务器结构是本系统采用的体系结构。用户无需安装客户端软件只需通过浏览器访问系统即可使用全部功能。管理员访问后台管理地址进行系统维护普通用户访问前台网站进行图书浏览与互动。前后端分离部署后端提供 JSON 格式 API 接口前端负责页面渲染与用户交互降低了系统部署与维护成本也便于后续功能扩展。系统实现本系统为 B/S 架构包含管理员和用户两类角色。管理员负责图书数据维护、系统配置和统计分析用户可浏览图书、查看推荐、收藏评论并参与论坛交流。1、管理员功能登录管理员输入用户名和密码点击登录。系统校验通过后进入后台首页失败则提示错误信息。图5-1 管理员登录界面个人中心管理员可在个人信息页修改用户名、头像等信息点击提交后保存到数据库。图5-2 管理员个人中心界面豆瓣高分管理支持按书名、作者、出版社、标签查询图书可进行新增、修改、删除操作支持爬取豆瓣数据以及书名、作者、价格、出版社、评分等统计分析。图5-3 豆瓣高分管理界面用户管理支持按账号、姓名查询用户可进行新增、查看、修改、删除操作。图5-4 用户管理界面论坛交流管理管理员可查看用户帖子对违规内容进行删除。图5-5 论坛交流管理界面系统管理包含系统简介、轮播图管理、通知公告及公告分类等配置功能。图5-6 系统管理界面数据看板以图表形式展示书名、作者、价格、出版社、评分等统计数据并显示豆瓣高分图书总数。图5-7 数据看板界面2、用户功能注册登录用户填写账号、密码等信息注册注册成功后登录系统。图5-8 用户注册登录界面网站首页展示系统简介、通知公告和豆瓣高分推荐图书列表。图5-9 用户网站首页界面豆瓣高分浏览用户可浏览图书列表查看详情并进行收藏、点赞、踩和评论。图5-10 豆瓣高分详情界面代码地址源码集市