大数据时代下,数据呈爆炸式地增长。为了迎合信息化时代的潮流和信息化安全的要求,利用互联网服务于其他行业,促进生产,已经是成为一种势不可挡的趋势。在网络小说的要求下,开发一款整体式结构的小说推荐系统,将复杂的系统进行拆分,能够实现对需求的变化快速响应、系统稳定性的保障,能保证平台可持续、规模化发展的要求。
本文研究的小说推荐系统完善了对应的软体架设以及程序编码的工作,系统采用java语言、Hadoop框架、MVC模式、MySQL数据库进行业务系统的编码及其开发,实现了本系统的全部功能。同时完成小说推荐系统的基本功能:图书浏览、图书资讯、小说类型、下载信息等。
关键词:小说推荐系统;整体式结构;Mysql数据库
Hadoop后端+HTML前端+大数据屏——>Hadoop、HTML、大数据屏
————————————————
根据用户对系统的需求,要求系统简单操作,能够准确,完整的对信息进行管理。小说推荐系统在对需求做解析后,整个系统主要分为两个部分:管理员和普通用户,每个模块下的分支功能不一样。对功能做出如下说明:
管理员模块:系统用户管理、小说分类管理、用户注册管理、图书信息管理、下载信息管理、图书资讯管理。
用户模块:小说浏览、图书资讯、公告栏、图书信息、个人账户等。
用户用例图如下所示。
图3-1 用户用例图
管理员用例图如下所示。
图3-1 管理员用例图
部分代码:
# -*- coding: utf-8 -*-
import os
import importlib
services_abspath_arr = []
services_arr = []
services_dir_ = os.getcwd() + "\\hadoop"
# 遍历模块文件(绝对路径)加到services_abspath_arr数组
# 选择服务函数
def service_hadoop_select(str):
for service_item in services_arr:
if str.capitalize() == service_item.__class__.__name__:
return service_item
def foreach_file(path_name):
for root, dirs, files in os.walk(path_name):
for f in files:
services_abspath_arr.append(os.path.join(root, f))
# 读取模块
# f:文件路径
def loadModule(f):
# 将f变成相对路径
f = f.replace(services_dir_ + "\\", "").replace(".py", "").replace("\\", "/")
# print(f)
mod = importlib.import_module(
"jobs."+f.replace("/", ".")
)
arr_1 = f.split("/")
cs_service = getattr(mod, arr_1[len(arr_1) - 1].capitalize())
# service的class形式
service = cs_service()
services_arr.append(service)
foreach_file(services_dir_)
for f in services_abspath_arr:
if f.find(".pyc") == -1 and f.find("__init__") == -1:
# print(f)
loadModule(f)
目 录
第1章 绪论 1
1.1 研究背景与意义 1
1.2 开发现状 1
第2章 开发工具及相关技术介绍 2
2.1 Hadoop框架介绍 2
2.2 MySQL 数据库 2
2.3 B/S结构 3
2.4 JAVA技术 3
2.5 MVVM模式介绍 3
第3章 系统分析 4
3.1 可行性分析 4
3.1.1 技术可行性 4
3.1.2 经济可行性 4
3.1.3 操作可行性 5
3.2 需求分析 5
3.3 系统业务流程分析 9
3.4 系统数据流程分析 10
第4章 系统设计 12
4.1 系统架构设计 12
4.2 系统功能结构 12
4.3 功能模块设计 13
4.4 数据库设计 14
4.4.1 概念模型设计 15
4.4.2 逻辑结构设计 15
第5章 系统实现 20
5.1 登录模块的实现 20
5.2 用户子系统模块的实现 22
5.3 管理员子系统模块的实现 32
第6章 系统测试 40
6.1 测试目的 40
6.2 测试用例 40
6.3 测试结果 41
第7章 总结与展望 43
参考文献 44
致谢 46