ssm协同过滤算法的电影推荐系统

ssm协同过滤算法的电影推荐系统陈大发随笔-计算机源码资源-计算机毕业设计项目陈大发随笔
ssm协同过滤算法的电影推荐系统
此内容为付费资源,请付费后查看
39.9
付费资源

XXXXX学院

本科毕业设计

题目电影推荐系统

系 别

专 业

年 级

学生学号

学生姓名

指导教师

xxxx年 x月 x日

摘 要

“互联网+”的战略实施后,很多行业的信息化水平都有了很大的提升。但是目前很多行业的管理仍是通过人工管理的方式进行,需要在各个岗位投入大量的人力进行很多重复性工作,使得对人力物力造成诸多浪费,工作效率不高等情况;同时为后续的工作带来了隐患。并且现有的电影推荐系统由于用户的体验感较差、系统流程不完善导致系统的使用率较低。此基于协同过滤算法的电影推荐系统的部署与应用,将对首页,个人中心,用户管理,电影分类管理,免费电影管理,付费电影管理,电影订单管理,我的电影管理,电影论坛,系统管理等功能进行管理,这可以简化管理工作程序、降低劳动成本、提高业务效率和工作效率。为了有效推动个性化智能电影推荐资源的合理配置和使用,适应现代个性化智能电影推荐机构的管理办法,迫切需要研发一套更加全面的基于协同过滤算法的电影推荐系统。

本课题在充分研究了ssm框架基础上,采用B/S模式,以Java为开发语言,MyEclipse为开发工具,MySQL为数据管理平台,实现的内容主要包括首页,个人中心,用户管理,电影分类管理,免费电影管理,付费电影管理,电影订单管理,我的电影管理,电影论坛,系统管理等功能。

关键词:协同过滤算法;电影推荐;Java;互联网+

Abstract

After the implementation of the “Internet +” strategy, the level of informatization in many industries has been greatly improved. However, the management of many industries is still carried out by manual management, which requires a lot of manpower in various positions to carry out a lot of repetitive work. , resulting in a lot of waste of human and material resources and low work efficiency; at the same time, it brings hidden dangers to the follow-up work. In addition, the existing movie recommendation system has a poor user experience and imperfect system flow, resulting in a relatively high utilization rate of the system. Low. The deployment and application of this collaborative filtering algorithm-based movie recommendation system will help the home page, personal center, user management, movie classification management, free movie management, paid movie management, movie order management, my movie management, movie forum, System management and other functions for management, which can simplify management procedures, reduce labor costs, improve business efficiency and work efficiency. In order to effectively promote the rational allocation and use of personalized intelligent movie recommendation resources, adapt to the management of modern personalized intelligent movie recommendation agencies It is urgent to develop a more comprehensive movie recommendation system based on collaborative filtering algorithm.

On the basis of fully studying the ssm framework, this topic adopts the B/S mode, uses Java as the development language, MyEclipse as the development tool, and MySQL as the data management platform. , Free Movie Management, Paid Movie Management, Movie Order Management, My Movie Management, Movie Forum, System Management and other functions.

Key words: collaborative filtering algorithm;Movie recommendation;Java;Internet +

目 录

1绪论 4

1.1课题背景 4

1.2系统实现的功能 4

1.3课题研究的意义 4

2系统相关技术介绍 5

2.1 Java介绍 5

2.2 SSM框架 6

2.3 Mysql数据库 6

2.4MySQL环境配置 6

2.5协同过滤算法简介 7

2.6B/S架构 7

3系统分析与设计 8

3.1可行性分析 8

3.2性能需求分析 9

3.3功能分析 9

4系统设计 11

4.1系统结构设计 11

4.2数据库设计 12

5系统实现 20

5.1系统功能模块 20

5.2管理员功能模块 22

6系统的调试和测试 26

7结论 27

参 考 文 献 28

致谢 28

1绪论

1.1课题背景

随着电子技术的普及和快速发展,线上管理系统被广泛的使用,有很多商业机构都在实现电子信息化管理,电影推荐也不例外,由比较传统的人工管理转向了电子化、信息化、系统化的管理。

传统的电影推荐管理,一开始都是手工记录,然后将手工记录的文档进行存档;随着电脑的普及,个性化智能电影推荐管理演变成了手工记录后,输入电脑进行存档。传统的管理方式,对管理者来说工作量大。而且这种电影推荐管理的方式,容易出现遗失或因为失误输入错误的信息等等。在这些基础上,我把java技术的基于协同过滤算法的电影推荐系统作为我的毕业设计,希望可以解决电影推荐管理中出现的问题,简化工作人员的压力,也可以方便管理员进行系统化、电子化的管理。

1.2系统实现的功能

本次设计任务是要设计一个基于协同过滤算法的电影推荐系统,通过这个系统能够满足电影推荐的管理功能。系统的主要包括首页,个人中心,用户管理,电影分类管理,免费电影管理,付费电影管理,电影订单管理,我的电影管理,电影论坛,系统管理等功能。

管理员可以根据系统给定的账号进行登录,登录后可以进入电影推荐系统对个性化智能电影推荐所有模块进行管理。包括查看和修改自己的个人信息以及登录密码。

该系统为每一个用户都分配了一个用户账号,用户通过账号的登录可以在系统中查看个性化智能电影推荐信息及对个人信息进行修改等功能。

1.3课题研究的意义

通过电影推荐系统的研究可以更好地理解系统开发的意义,而且也有利于发展更多的智能系统,解决了人才的供给和需求的平衡问题,基于协同过滤算法的电影推荐系统的开发建设,由于其开发周期短,维护方便,所以它可以适应个性化智能电影推荐体系的基本要求。

2系统相关技术介绍

2.1 Java介绍

Java是由SUN公司推出,该公司于2010年被oracle公司收购。Java本是印度尼西亚的一个叫做爪洼岛的英文名称,也因此得来java是一杯正冒着热气咖啡的标识。Java语言在移动互联网的大背景下具备了显著的优势和广阔的前景,它是面向对象的,分布式的,动态的,具有平台无关性、安全性、健壮性。Java语言的基本语句语法和C++一样,但是它面向对象的技术更加彻底,因为Java要求将所有的内容都必须封装成类,把类作为程序的基本单位。由于不允许类外有变量、方法。 Java语言的分布式体现在数据分布和操作分布,它是面向网络的语言,可以处理TCP/IP协议,它也支持客户机/服务器的计算模式。Java语言的动态性是指类在运行时是动态安装的,使得Java可以动态的维护程序。Java不支持指针,对内存访问的所有操作都是通过对象实例化实现的,这样就避免了指针操作中易产生的错误,同时也预防了病毒对系统的破坏和威胁。

Java语言的编程风格与C语言非常接近,它继承了C++面向对象技术的核心,它面世之后发展迅速,非常流行,对高级C语言形成了很大的冲击。业内人士称之为“一次编译、到处执行”。当然java也有缺点,在每次执行编译后,字节码都需要消耗一定的时间,在某些程度上降低了性能。但是这并不影响java成为此次设计语言的选择。Java语言简单易学,使用它的编程时间短,功能性强,开发者学习起来更简便、更快。Java的主要特性有以下几个:

1.面向对象

面向对象有四个特点:封装、继承、多态、抽象。抽象是指忽略一个问题中的次要部分,关注主要部分。多态是指对同一种消息做出的不同反应。继承是指在原有的父类方法基础上增加自己独有的方法,而不改变原来父类。

2.平台无关性

Java编译出来的是字节码,直接由虚拟机执行。在任何平台上,只要有Java虚拟机,Java代码都能运行。

3.可靠性和安全性

Java对内存的访问都必须通过对象的实例变量来实现,避免了指针中出现的错误。

4.多线程

Java提供了多线程功能,利用编程实现同一时间同时工作的功能。

2.2 SSM框架

开发信息管理系统的主流框架是SSM(Spring + Spring MVC + MyBatis),SSM框架web层使用Spring MVC框架,使传输前后端数据变得简单;对于业务层使用Spring作为轻量级控制反转和面向切面的容器框架;对于相关SQL操作,采用Mybatis作为持久层框架,对JDBC进行封装,使得数据库的底层面向开发者操作处于一种透明状态。

2.3 Mysql数据库

MySQL,就是关系数据库开发工具,使用的语言是SQL语言。MySQL在保存数据时是根据数据的类型和特征分开保存在不同的表中,这样当用户在需要调用的数据时,就不再需要花费大量时间去寻找数据了,只要找到对应的表,就可以找到需要的数据了。MySQL可以完美的实现对于数据库的基本操作。因为 MySQL 数据库的占用的内存少,运行快,成本低,源代码开放,可移植性强,所以越来越多的数据来源简单的项目的开发都会选择 MySQL作为数据库,而MySQL也变得越来越流行。

MySQL 有很多特性,如可移植性,多线程,灵活性等,在很多操作系统中都可以运行。它可以实现在多个线程并发执行的技术;支持MyISAM、innoDB、MEMORY、ARCHIVE四种存储引擎,而且可以使用大型数据库,为用户提供许多使用数据库的工具,比如建模工具,管理工具等。在 WEB方面的应用MySQL是最好的。

2.4MySQL环境配置

本系统的数据使用的是MySQL,所以要将MySQL安装到指定目录,如果下载的是非安装的MySQL压缩包,直接解压到指定目录就可以了。然后点击C:\Program Files\MySQL\bin\winMySQLadmin.exe这个文件其中C:\Program Files\MySQL是MySQL安装目录。输入winMySQLadmin的初始用户、密码(注:这不是MySQL里的用户、密码)随便填不必在意,确定之后右下角任务的启动栏会出现一个红绿灯的图标,红灯亮代表服务停止,绿灯亮代表服务正常,左击这个图标->winnt->install the service 安装此服务,再左击这个图标->winnt->start the service 启动MySQL服务。

修改MySQL数据库的root密码。用cmd进入命令行模式输入如下命令:

cd C:\Program Files\MySQL\bin

MySQLadmin -u root -p password 123

回车出现Enter password: ,这是要输入原密码. 刚安装时密码为空,所以直接回车,此时MySQL 中账号 root 的密码被改为 123 安装完毕。

2.5协同过滤算法简介

协同过滤算法是一种较为著名和常用的推荐算法,它基于对用户历史行为数据的挖掘发现用户的喜好偏向,并预测用户可能喜好的产品进行推荐。也就是常见的“猜你喜欢”,和“购买了该商品的人也喜欢”等功能。它的主要实现由:

●根据和你有共同喜好的人给你推荐

●根据你喜欢的物品给你推荐相似物品

●根据以上条件综合推荐

因此可以得出常用的协同过滤算法分为两种,基于用户的协同过滤算法(user-based collaboratIve filtering),以及基于物品的协同过滤算法(item-based collaborative filtering)。特点可以概括为“人以类聚,物以群分”,并据此进行预测和推荐。

2.6B/S架构

B/S结构是目前使用最多的结构模式,它可以使得系统的开发更加的简单,好操作,而且还可以对其进行维护。使用该结构时只需要在计算机中安装数据库,和一些很常用的浏览器就可以了。浏览器就会与数据库进行信息的连接,可以实现很多的功能,B/S结构是可以直接进行使用的,而且B/S结构在使用中极大的减少了工作的维护。基于B/S的软件,所有的数据库之间都是相互独立的,因此是非常安全的。因为基于B/S结构可以清楚的看到系统正在处理的业务,并且能够及时的让管理人员做出决策,这样就可以避免企业的损失。B/S结构的基本特点是集中式的管理模式,用户使用系统生成数据后,这些数据就可以存储到系统的数据库中,方便日后能够用到,这样就可以满足人们的所有的需求。

图片[1]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图2-1 B/S模式三层结构图

3系统分析与设计

3.1可行性分析

可行性分析是每开发一个项目必不可少的一部分,可行性分析可以直接影响一个系统的存活问题,针对开发意义进行分析,还有就是是否可以通过所开发的系统来弥补传统纸质手工统计模式的不足,是否能够更好的解决电影推荐信息问题等,通过对该系统的开发设计,不仅能够逐步减少工作人员的工作量,而且还可以进行高效工作和管理。所以该系统的开发实现了最大的意义和价值,在系统完成后,利益是否大过于成本,是否能够达到预期效果,这些方面都要进行可行性分析,再通过分析之后,就可以决定是否开发此系统。该系统的开发设计中,以下几点进行了可行性分析:技术可行性:通过java技术的采用,由于该技术不断成熟,所以使用该技术设计电影推荐系统是具有可行性的。经济可行性:在开发过程中,系统完成后的利益是否大过于开发成本。操作可行性:电影推荐系统的开发设计中,方便用户的可操作性和实用性。

针对电影推荐系统的需求、设计、实现进行研究,本文首先将对电影推荐系统的需求进行调查研究,在对系统进行认真分析之后,得出开发整个系统的各项需求。在此基础上,本文将会进一步根据系统各个需求来完成相应模块的设计,力求详尽地对各项功能的设计理念进行一一说明,并通过建模语言,文字说明等手段详细地论述系统的功能模块设计和框架结构设计。在对模块的实现过程中,本文将对各项重要模块进行成果截图展示,进而对核心功能进行代码分析,在通过最后的科学合理的系统测试之后,完成整个系统的开发工作。具体包括以下内容:

  1. 调查分析本系统的背景,经过实际现场的考察,认清目前电影推荐在这方面管理所采取的应对措施,针对个性化智能电影推荐服务的详细流程中一些不合理现象,思考其中所暴露出的问题以及提出此项过错的具体原因。
  2. 对比于这些问题,思考需要将那些功能纳入整个系统规划中,并考虑如果如此设计将会引发可能的影响。尽量在需求设计时消除不良隐患,使系统能够在后续过程中良性循环,降低成本消耗。
  3. 在详细的功能各个方面处理时,应统筹整个项目的安排,让众多的模块间平滑顺利运行,减少相互之间的不必要耦合,实现精细设计。

进入测试时,按照先整体后细节原则,联系各个模块之间的功能,尽量合理科学,并通过换位思想,使系统更具使用性。

3.2性能需求分析

对系统的性能,从(功能、运行、界面、安全)等方面进行,下面我们逐一进行分析;

1. 系统的功能是否完整进行分析:系统的功能,能对应设计出原始代码和算法,以表格同文字的形式进行详细介绍个人信息保证功能完整。

2. 系统的运行是否通畅进行分析:系统的每个功能都有编写数据的关系和应对的代码,通过需求分析和可行性分析进行分析和显示系统的物理数据,保证其进行通畅。

3. 系统的界面设计进行分析:对系统中的软件进行处理与分析的方式是由不同代码来进行的;从而使界面容易操作。

4. 系统的安全性进行分析:这样才可以每个角色的不同对应的信息也就不同,在登录系统务必使用自己的账号,密码登录,账号与密码错误自然就登录失败了。登录成功可以对自己的信息进行操作,不能对别人的账号的信息进行查看等操作,这样自然保证系统的安全性。

3.3功能分析

考虑到实际生活中在电影推荐管理方面的需要以及对该系统认真的分析,将系统权限按管理员和用户这两类涉及用户划分。

(1)管理员功能需求

管理员登陆后,主要模块包括首页,个人中心,用户管理,电影分类管理,免费电影管理,付费电影管理,电影订单管理,我的电影管理,电影论坛,系统管理等功能。管理员用例图如图3-1所示。

图3-1 管理员用例图

(2)用户功能需求

用户登陆后,用户登录进入系统可以实现首页,免费电影,付费电影,电影论坛,电影资讯,个人中心等功能。用户用例图如图3-2所示。

图3-2 用户用例图

4系统设计

4.1系统结构设计

系统设计是把本系统的各项功能需求进行细化,而转换为软件系统表示的一个设计过程,在对目标系统的研究分析之后,做出整个系统平台的总体规划,进而对用例中各个对象进一步地合理精细设计。为降低整个系统的复杂度,而使其更加便于修改,提高代码的可读性,我们会将系统模块化,模块间保持相对独立,且每个模块只完成一个子功能,并且与其他模块通过简单的接口链接,即高内聚低耦合原则,而使整个系统能够拥有一个高性能的结构,这边是系统概要设计最重要的目的。在之前的需求分析的基础上,本电影推荐系统结构,如下图4-1所示。

图4-1 系统结构功能图

4.2数据库设计

在查询时,应保证所有满足条件的记录都能查到。数据库记录通常在几百条以上,如有遗漏将会对客户的统计造成影响。一般操作的响应时间应该在1-2秒内。采用菜单界面,对会员比较友好。本文中将通过E-R图来设计并展示数据的概念模型,

用户注册实体属性图如图4-2所示。

图4-2用户注册实体属性图

免费电影实体E-R图如图4-3所示。

图4-3免费电影实体E-R图

数据库概念结构设计后,可以数据库概念转化实际的数据模型,这是一种数据库的逻辑结构,就是将概念结构与支持数据库管理系统的模型相符合。具体的表设计如下所示:

表4-1:付费电影评论表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容

表4-2:用户

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuming varchar 200 用户名
xingming varchar 200 姓名
mima varchar 200 密码
xingbie varchar 200 性别
nianling int 年龄
shoujihao varchar 200 手机号

表4-3:电影分类

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
dianyingfenlei varchar 200 电影分类

表4-4:我的电影

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
dingdanbianhao varchar 200 订单编号
dianyingbianhao varchar 200 电影编号
dianyingmingcheng varchar 200 电影名称
jiage float 价格
yonghuming varchar 200 用户名
xingming varchar 200 姓名
shoujihao varchar 200 手机号
dianyinglianjie varchar 200 电影链接

表4-5:电影订单

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
dingdanbianhao varchar 200 订单编号
dianyingbianhao varchar 200 电影编号
dianyingmingcheng varchar 200 电影名称
jiage float 价格
yonghuming varchar 200 用户名
xingming varchar 200 姓名
shoujihao varchar 200 手机号
goumaishijian datetime 购买时间
ispay varchar 200 是否支付 未支付

表4-6:用户表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP

表4-7:配置文件

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值

表4-8:token表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP

表4-9:收藏表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 收藏id
tablename varchar 200 表名
name varchar 200 收藏名称
picture varchar 200 收藏图片
type varchar 200 类型(1:收藏,21:赞,22:踩) 1
inteltype varchar 200 推荐类型

表4-10:电影资讯

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture varchar 200 图片
content longtext 4294967295 内容

表4-11:免费电影

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
dianyingbianhao varchar 200 电影编号
dianyingmingcheng varchar 200 电影名称
dianyingfenlei varchar 200 电影分类
shipin varchar 200 视频
haibao varchar 200 海报
pingfen float 评分
kaiyingshijian date 开映时间
shizhang varchar 200 时长
zhuyan varchar 200 主演
daoyan varchar 200 导演
dianyingxiangqing longtext 4294967295 电影详情
thumbsupnum int 0
crazilynum int 0
clicktime datetime 最近点击时间
clicknum int 点击次数 0

表4-12:付费电影

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
dianyingbianhao varchar 200 电影编号
dianyingmingcheng varchar 200 电影名称
dianyingfenlei varchar 200 电影分类
yugaopian varchar 200 预告片
haibao varchar 200 海报
jiage float 价格
pingfen float 评分
kaiyingshijian date 开映时间
shizhang varchar 200 时长
zhuyan varchar 200 主演
daoyan varchar 200 导演
dianyingxiangqing longtext 4294967295 电影详情
thumbsupnum int 0
crazilynum int 0
clicktime datetime 最近点击时间
clicknum int 点击次数 0

表4-13:电影论坛

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 帖子标题
content longtext 4294967295 帖子内容
parentid bigint 父节点id
userid bigint 用户id
username varchar 200 用户名
isdone varchar 200 状态

表4-14:免费电影评论表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容

5系统实现

5.1系统功能模块

电影推荐系统,在系统首页可以查看首页,免费电影,付费电影,电影论坛,电影资讯,个人中心等内容,并进行详细操作;如图5-1所示。

图片[2]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-1系统首页界面图

用户注册,在用户注册页面通过填写用户名,姓名,密码,确认密码,年龄,手机号等内容进行注册操作,如图5-2所示。

图片[3]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-2用户注册界面图

免费电影,在免费电影页面可以查看电影编号,电影分类,评分,开映时间,时长,导演,主演,点击次数等信息,并进行赞一下,踩一下,点我收藏等操作,如图5-3所示。

图片[4]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-3免费电影界面图

个人中心,在个人中心页面通过填写用户名,姓名,密码,性别,年龄,手机号等内容进行更新信息,还可以根据需要对我的发布,我的收藏进行相对应操作,如图5-4所示。

图片[5]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-4个人中心界面图

付费电影,在付费电影页面可以查看电影名称,电影编号,电影分类,价格,评分,开映时间,时长,主演,导演,点击次数等信息,并进行立即付费,赞一下,踩一下等操作,如图5-5所示。

图片[6]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-5付费电影界面图

5.2管理员功能模块

后台登录,管理员进入系统前在登录页面根据要求填写用户名和密码,选择角色等信息,点击登录进行登录操作,如图5-6所示。

图片[7]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-6管理员登录界面图

管理员登录系统后,可以对首页,个人中心,用户管理,电影分类管理,免费电影管理,付费电影管理,电影订单管理,我的电影管理,电影论坛,系统管理等功能进行相应的操作,如图5-7所示。

图片[8]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-7管理员功能界面图

用户管理,在用户管理页面可以对索引,用户名,姓名,性别,年龄,手机号等内容进行详情,修改和删除操作,如图5-8所示。

图片[9]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-8用户管理界面图

免费电影管理,在免费电影管理页面可以对索引,电影编号,电影名称,视频,海报,评分,开映时间,时长,主演,导演等内容进行详情,修改,查看评论和删除操作,如图5-9所示。

图片[10]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-9免费电影管理界面图

付费电影管理,在付费电影管理页面可以对索引,电影编号,电影名称,预告片,价格,海报,评分,开映时间,时长,主演,导演等内容进行详情,修改,查看评论和删除操作,如图5-10所示。

图片[11]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-10付费电影管理界面图

电影订单管理,在电影订单管理页面可以对 索引,订单编号,电影编号,电影名称,价格,用户名,姓名,手机号,购买时间,是否支付等内容进行详情,我的电影,修改和删除等操作;如图5-11所示。

图片[12]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-11电影订单管理界面图

我的电影管理,在我的电影管理页面可以对索引,单编号,电影编号,电影名称,价格,用户名,姓名,手机号,电影链接等内容进行详情和删除操作,如图5-12所示。

图片[13]陈大发随笔-计算机源码资源-计算机毕业设计项目ssm协同过滤算法的电影推荐系统

图5-12我的电影管理界面图

6系统的调试和测试

调试其实也是一个相当重要的过程,对于编程完成的功能,并不一定很完善,很多时候不像程序员想象中那么顺利,有很多漏洞都是在调试过程中发现的。测试前,我们首先要清空数据库中的所有数据,然后输入少量的数据进行测试。测试过程中有些功能并不是像构思好的那样顺序执行,并且有时系统会很不稳定,所以测试帮助我们发现错误并对程序做一些修改和完善。

本系统的测试应从用户注册测试开始,然后再进行用户登录测试,对系统的各个模块的功能进行测试,查看是否与需求说明上要求的功能一致。有时候少写一条语句、session未执行或者数据库的某些字段名字改掉了而造成引用不成功这样的小错误是常有的,有时删掉了一些方法但是忘记在前台页面上删除会引发一些错误或者Mysql语句不正确之类的错误都也是比较常见的。

在本系统的测试中我遇到了几个比较“纠结”的问题,最开始是SQL语句部分总是提示user附近有语法错误,怎么都不能做数据库的查询,就是在user表创建时,软件会在表名外加上一个“[]”,导致我的表名总是错误无法查询;MysqlL还有一个我自己造成的问题,就是我无意中把Mysql的登录名给删掉了,导致我没有办法链接到数据库,后来在老师的帮助下我才意识到问题出在这个地方,最后还是重新装的SQL这写问题也就都没有了。最后在做信息推送的查询/修改功能时也遇到了很大的问题,后台语句的逻辑和SQL语句都没有错误,系统也按照逻辑顺序提示修改成功,可是就是数据库中的内容没有修改,后来发现每做一个操作页面会刷新,就刷新成了数据库中原来的值,Mysql语句确实update成功了,只是修改的是原来的数据,所以看起来没有任何修改,我通过在页面加载方法中添加if (!IsPostBack){ }方法,这样就解决了页面刷新的问题。还有一个比较麻烦的问题就是模糊查询和类型查询的综合查询,一开始只定义了全局变量,总是查询失败,后来通过打断点测试,发现全局变量的值不易保存,后来改成了session变量,查询就成功了。当然遇到的问题不止这三个,还有很多的小问题,不过在模块测试时一一解决了。

调试是一个需要耐心和细心的工作,所以只是大体上执行一下是不会发现漏洞的,应该把每个功能都多调试几次,把可能的顺序或方法都试验一遍,往数据库中多添加一些东西,多次重复调用,尽可能地找出问题,这样才能够使系统更加完善。并且我认为当发现问题并解决问题的时候会体会到很大的成就感和快乐!这种感觉更鼓励我继续努力!

 

7结论

历经六个月左右的时间,本次的毕业设计已画上了句号。原本以为完成一个系统会很顺利,因为在之前课上,也曾动手操作过相关的模块编写,但当真正接触到一个完整的系统时,发现并没有想象地那么简单。首先,以前实践过的只是单独的模块,而这次,是一个庞大的系统,许多细节不容忽视,有时候稍不留意的一个小错误,会致使整个系统都运行不起来,而查找错误的过程又漫长且艰辛,这也正是经验不足所导致的。在整个系统开发过程中,也查阅了很多书籍和相关资料,这让我不但巩固了原本的知识,同时还学习到了一些新的知识,这让我受益匪浅。

此次系统从整体看来,已基本达到预期的设计目的,能够实现基本的功能,但相较于市场的一些优秀网站而言,还是有许多不足的地方。遗憾的是,由于时间的有限,已经不允许再投入更多的时间和精力进行研究开发。相信在以后的工作中,我会接触到更多相关的知识,会更丰富自身的经验,我希望到时能够在此基础上完成一个丰富完整的学习网站,这将对我有很大的意义。

通过这次的毕业设计,我学到了很多,除了学识方面的知识,在态度上也有了很大的转变,细心和耐心是整个开发过程中最重要的两件事。我也在跟随着系统的完善而成长,这次毕业设计考核地也不单单是所学的知识,也同样在衡量着面对困难时的态度。

参 考 文 献

[1]徐磊.网页制作与网站建设技术大全清[M].北京:清华大学出版社,2008.9.

[2]张孝祥,徐明华. JAVA基础与案例开发详解[M]. 北京:清华大学出版社. 2009.45-46.

[3]张文静,林琪著.JSP程序设计[M]. 北京:人民邮电出版社.2005.256-257.

[4]孙卫琴,李洪成著.Tomcat与Java Web开发技术详解[M].北京:电子工业出版社.2005.343-344.

[5]吴涛.网站全程设计技术(修订本)[M]. 北京:清华大学出版社.2005.

[6]黄裴,徐汀荣.电子商务原理与技术(第二版)[M]. 北京:科学出版社.2006.124-126.

[7]康牧.JSP动态网站开发实用教程[M]. 北京:清华大学出版社.2009.127-127.

[8]刘亚宾.精通Eclipse–JAVA技术大系[M]. 北京:电子工业出版社.2005.167-168.

[9]于万波.网站开发与应用案例教程[M]. 北京:清华大学出版社.2009.77-78.

[10]马赫. Dreamweaver MX 2004 网页设计经典108例[M]. 北京:中国青年出版社.2005.99-101.

[11]张洁才.Java web应用开发教程[M]. 北京:科学出版社.2005.66-68.

[12]戴维尔.JavaScript程序员教程[M]. 北京:电子工业出版社.2010.333-334.

[13]唐友国湛洪波著.JSP网站开发详解[M]. 北京:电子工业出版社.2008.111-112.

[14]何翠平 编,HTML从入门到精通[M]. 北京:电子工业出版社,2007.7.

[15](美)H.M.Deitel,P.Jdeitel.Java. 程序设计教程(第五版)[ M]. 北京:清华大学出版社.2004.

[16](美)Elliotte Rusty Harold.Java Network Programming[M]. 南京:东南大学出版社.2005.

致谢

本此毕业设计是在指导老师的指导和支持下完成的。导师具有丰富的知识和敏锐的思维给了我深深的启发。在设计开始的时候,导师为我搜集很多的设计相关资料,让我快速掌握了系统设计的基本步骤,使我的设计工作进展顺利,在此我向导师表示真诚的谢意!

同时,我还要感谢我的老师和我的同学对我的关心和支持。另外,我还要感谢互联网的朋友,他们将自己的知识拿出来分享,让我可以实现功能模块的一部分,谢谢你们。

经过这次毕业设计,我体会不少,需要用到所学知识的时候就发现自己不知所措。其实自己与那些通过实际作业的人差距很大。但这次毕业设计为我日后指明了努力方向。

再一次,我向多方面支持和帮助过我的人表示由衷的感谢!

最后,感谢评审老师,谢谢你抽出时间来审查。

 

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发
江湖的头像陈大发随笔-计算机源码资源-计算机毕业设计项目陈大发随笔

昵称

取消
昵称表情代码图片