springboot基于JAVA的电影推荐系统的开发与实现 附源码-毕业设计112306

2023-05-16

                                                          

目    录

   4

Abstract 5

1     6

1.1  研究背景 6

1.2  研究现状 6

1.3  系统开发目标 6

2  技术与原理 8

2.1  JSP介绍 8

2.2  JAVA技术 8

2.3  MySQL数据库 8

2.4  B/S结构 9

3  需求分析 10

3.1  需求分析 10

3.2  系统可行性分析 10

3.3  项目设计目标与原则 11

3.4  系统流程分析 11

4  架构设计 13

4.1  系统体系结构 13

4.2  数据库实体设计 14

4.3  数据库表设计 15

5  系统实现 23

5.1  系统功能模块 23

5.2  用户功能模块 25

5.3  管理员功能模块 28

6  系统测试 30

6.1  测试目的 30

6.2  测试方法 30

6.3  功能测试 31

6.4  测试结论 32

7    33

参考文献 34

   36

摘  要

随着互联网与移动互联网迅速普及,网络上的电影娱乐信息数量相当庞大,人们对获取感兴趣的电影娱乐信息的需求越来越大,个性化的电影推荐系统成为一个热门。然而电影信息的表示相当复杂,己有的相似度计算方法与推荐算法都各有优势,导致单一的相似度计算方法与推荐算法无法合适地应用于电影推荐系统中。大量的电影数据的管理运营随着数据量的增长也变得越来越复杂,因此,如何综合各种算法的优势给用户可靠的电影推荐结果,并保证用户能访问到正确的推荐数据成为推荐系统设计中需要解决的一个重要问题。

系统采用了B/S结构,将所有业务模块采用以浏览器交互的模式,选择MySQL作为系统的数据库,开发工具选择My eclipse来进行系统的设计。基本实现了电影推荐系统应有的主要功能模块,本系统有管理员、学生和社长三大功能模块,管理员:首页、轮播图、公告栏、管理员、影片交流、论坛分类列表、新闻列表、新闻分类列表、普通用户、每日电影、高分电影、热门电影;用户:首页、影片交流、公告栏、影片资讯、每日电影、高分电影、热门电影、我的管理等操作。

对系统进行测试后,改善了程序逻辑和代码。同时确保系统中所有的程序都能正常运行,所有的功能都能操作,并且该系统有很好的操作体验,实现了对于管理员与用户双赢。

关键词:电影推荐系统;Mysql; 

Abstract

With the rapid popularization of the Internet and mobile Internet, the amount of film entertainment information on the network is quite large. People have an increasing demand for obtaining interested film entertainment information. Personalized film recommendation system has become a hot topic. However, the representation of film information is quite complex, and the existing similarity calculation methods and recommendation algorithms have their own advantages, resulting in a single similarity calculation method and recommendation algorithm can not be properly applied to the film recommendation system. The management and operation of a large number of movie data has become more and more complex with the growth of the amount of data. Therefore, how to integrate the advantages of various algorithms to give users reliable movie recommendation results and ensure that users can access the correct recommendation data has become an important problem to be solved in the design of recommendation system.

The system adopts B / S structure, adopts browser interaction mode for all business modules, selects MySQL as the database of the system, and selects my eclipse as the development tool to design the system. Basically realized the main functional modules of the film recommendation system. The system has three functional modules: administrator, student and president. Administrators: home page, rotation map, bulletin board, administrator, film exchange, forum classification list, news list, news classification list, general users, daily films, high score films and popular films; Users: home page, film exchange, bulletin board, film information, daily film, high score film, popular film, my management and other operations.

After testing the system, the program logic and code are improved. At the same time, ensure that all programs in the system can run normally, all functions can be operated, and the system has a good operation experience, which realizes a win-win situation for administrators and users.

Key words: film recommendation system; Mysql;

第1章  前  言

1.1  研究背景

互联网在最近十年内出现了爆发性增长,伴随着用户数量迅速的增长的背后是用户数据量的指数级增长,面对着海量的信息,用户往往会感到束手无策,这就是互联网中所谓的信息过载问题。如何帮助用户从海量的信息中获取用户最感兴趣的信息逐渐成为一项热门的研究工作。

信息过载问题传统的解决方案是基于被动响应的服务模式,即用户提出有针对性的需求,服务器端则根据每个用户的具体需求,过滤用户不感兴趣的一些信息,然而这种解决方案也存在一些缺陷,因为它只是向用户提供一些共同兴趣点比较高的信息,例如热门的新闻,电影,音乐等,无法满足用户日益增强的个性化需求,用户获取个性化信息的难度仍然很大。

个性化的解决方案是解决上问题的主要方法,通过分析用户的历史数据对用户的兴趣爱好进行建模,为每个用户创建一个profile 文件,其中记录用户的兴趣表示,并能在和用户不断的交互中学习用户的兴趣,及时地更新用户的profile,在适当的时候提供给用户其感兴趣的信息。

近年来个性化信息服务逐渐成为 Web技术的热点,推荐系统在实时资讯、新闻、微博、电影评分、音乐、博客、电商等Web站点中都有大量的应用。通过推荐系统,系统可以有效地解决信息过载问题,分析用户的评分与购买行为等历史数据建立用户兴趣模型,无需用户特意地填写大量的兴趣调查信息,极大的减轻了用户的负担,使用户的认可度大大增加。

1.2  研究现状

经过调查,目前现代人的生活节奏加快,生活压力也在逐渐的增加,人们可以使用智能产品的功能给人们带来的便利,随着人们的网上管理不断的增加,越来越多的人们开始加入了网上管理的大潮中,但是我国对于网上电影推荐信息管理效果低下,而且出错率也很高。因此大家都在寻找一款更加专业化的电影推荐系统。

随着电影推荐系统的不断出现,用户需求的不断增多,电影推荐系统也不断的得到壮大,本系统主要根据用户和管理人员的实际需要,方便用户利用互联网实现对电影推荐系统的了解、对比,甚至是交易。同时让管理者可以通过这个系统对用户实际需求以及各品牌电影的所有了解和管理情况进行管理。设计该系统主要目的是为了方便人们的对各种类型的电影的横向对比,帮助人们节省时间,而且减少管理者资金的投入。

1.3  系统开发目标

对于网站的前台设计,要保证主界面的整洁有序,能够抓住人的眼球,不会产生视觉疲劳,更重要的是,带给人容易操作的直观感受,这样才能留住用户去进行使用,增加三分热度的延续期。在系统的后台设计上,要采取非常简洁有效的技术,开发方便的同时,便于以后的维护。我们不但要确保所有的功能都能够满足用户的需求,用户还要能自己主动通过网站去实现想要的操作,而管理者的简单通过网站对用户的需求情况进行了解和管理。为达到这一目的,提出以下目标:

(1)用户可以实时查看最新的电影信息,以及相关资讯;

(2)用户可以对比各大电影的信息,选择自己较为满意的电影;

(3)用户可以通过论坛互相交流购买电影心得;

(4)管理员可以在后台方便管理前台网页的各种信息;

(5)管理员可以方便查询、汇总用户的使用状态。


第2章  技术与原理

2.1  开发技术

本系统前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库使页面快速成型。后端部分:采用springboot作为开发框架,同时集成MyBatis、Redis等相关技术。

2.2  JAVA技术

Java语言是目前使用率最高的一个语言类程序,并且他的代码还是开源的,任何的软件开发者都可以进行使用,目前已经在人类计算机编程语言发展史上产生了深远影响。所以Java语言是很成熟的,将他应用到我们的系统的开发中是不错的选择,而且由于常见所以绝大多数的人们都可以操作。

Java语言具有非常多种的特性,他的代码编写非常的简单,并且有多种编写方式,他有很好的面向对象性,而且他对使用的平台没有任何的要求,所有的平台都可以进行操作,他的安全性能也很高,因此他非常适合该系统的开发。

Java可以对平台没有任何的要求限制,可以在任何的平台上进行运行,不需要借助其他的语言编辑器来对代码进行编辑就可以开始运行了,这一点是非常好的,不仅我们在使用的时候更加的方便而且由于不需要借助其他的程序就能实现,所以可以节约我们的开发成本,而且经过Java编辑过的程序代码,可以直接进行使用,不需要重新编译,因此它是非常便利的,而且程序的运用不需要有专业的技术就可以运行了,为软件开发提供了很大的可行性。

2.3  MySQL数据库

mysql数据库具有很多的优点,他操作起来非常的简单,只需要编写一小段代码就可以实现相应的功能,而且编写出的代码可以在任何的平台下进行使用,对使用平台没有任何的要求,因此任何的软件开发人员都可以利用mysql数据库来进行系统的开发设计,同时他也可以为软件开发节省了很多的开销,mysql数据库由于存储量大、操作简单。功能强大因此将他最为该系统的数据存储是完全可以的。

mysq数据库是一个开放的架构,任何软件开发员都可以进行使用,随着计算机网络的不断发展,MySQL数据库也在功能方面不断的进行提升,也更加适应所有的系统的开发,我们在对数据库进行操作的时候,是非常简单易上手的,我们只需要编写一小段的代码就可以实现相应的功能,而且编辑出的代码可以在任何的平台上使用,不需要在进行二次的编译。由于MySQL数据库具有以上非常多的优点,我们将它最为数据库的首选应用到系统的开发中,由于他的体积非常小,开发的成本也非常的低,所有受到很多软件开发者的喜欢,被更多的运用到系统的开放中,所以本系统也是利用MySQL数据库来对所有的数据进行存储和编辑。

2.4  B/S结构

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

 

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

第3章  需求分析

3.1  需求分析

开发系统的过程中,去调查用户的功能诉求,对需要存在的功能进行需求分析是特别重要的,且对于系统的开发有着实际的意义,设计电影推荐系统通过对用户的需求进行分析,结合实际情况进行开发研究,对用户的所有需求做出一个完整的基本的框架,然后一步一步的完成、实现。需求分析可以为系统的开发提供一个目标,只有按照这个目标进行开发设计,才能进行完整的开发,这样设计出的系统才有使用的意义,才能在竞争激烈的软件市场中生存,才能真正的帮助人们解决问题,提高实际的效率。

3.2  系统可行性分析

3.2.1 技术可行性

本系统采取的是目前应用最广泛的程序进行技术的支持,主要的技术支持是java语言,他作为一个相当成熟的语言程序,在众多的软件开发中起着很大作用。而且用java语言编辑出来程序可以直接运行,不需要借助其他的翻译器进行翻译。所以在技术方面是完全可以行的。

3.2.2 经济可行性

本项目开发的初衷就是为了节约,因为系统开发的所有过程都是我自己开发的我,而且在开发过程使用到的技术也都是市面上常见的容易操作的,所以不需要请专业的人士花资金来进行系统的开发,而且在项目开发的过程中我也学到了更多的知识。开发的这个软件可以在网络中进行免费的下载,对计算机的软硬件没有很高的要求,因此这个项目是非常实惠的,在经济方面是完全可性的。

3.2.3 操作可行性

操作可行性也就是系统的可用性,一个系统的操作是否容易决定着这个系统的使用度,在系统的操作方面的设计我都是采取简洁易懂的方式,操作的整个菜单界面整齐有序,所有的功能都有序的排列,不会出现重叠或者需要转换的现象,用户想要哪方面的操作都可以直接进行操作,所以该系统任何人都可以进行操作,不需要有相关专业的技术这样用户在操作起来就容易很多。

3.3  项目设计目标与原则

1、关于电影推荐系统的基本要求

(1)功能要求:管理员可以对所有的高校学生进行查看管理,可以对信息进行管理,可以及时的查看管理的情况,还可以对留言进行查看和管理等功能模块。

(2)性能:因为高校学生电影推荐中有很多的信息需要存储,因此对于系统的存储量有很大的要求,需要有一个强大的数据库的支持才能确保所有的信息都能安全稳定的进行存储。

(3)安全与保密要求:用户都必须通过管理员审核才能进入系统。

(4)环境要求:支持Windows系列、Vista系统等多种操作系统使用。

2、开发目标

电影推荐系统的主要开发目标如下:

(1)用户可以实时查看最新的电影信息,以及相关资讯;

(2)用户可以对比各大电影的信息,选择自己较为满意的电影;

(3)用户可以通过留言互相交流购买电影心得;

(4)管理员可以在后台方便管理前台网页的各种信息;

3、设计原则

本电影推荐系统采用Java技术,Mysql数据库开发,充分保证了系统稳定性、完整性。

(1)系统响应效率:由于是电影推荐系统,因此就需要系统的响应效率是非常高的,并且可以支持很多人同时进行系统的使用。

(2)界面简洁清晰:系统界面要简单有序,所有的功能一目了然。

(3)储存性高:因为是电影推荐系统,所以就会在数据库要求上比较严格,信息录入的比较多,而且丰富复杂, 这就需要一个强大的数据库来存放更多的数据和保证数据的时时性。

(4)易学性:系统的设计一定要简单,使得人们使用起来非常好的顺手。

(5)稳定性需求:该系统在使用过程中必须保持稳定,不要出现卡顿、模糊等情况。

(6)稳定性:由于是电影推荐系统,因此系统运行必须要十分的稳定。

3.4  系统流程分析

用户需要拥有属于自己的账号和密码,且必须正确,这样才能顺利登录到系统中。进入网站后,用户可以自行查询各种电影,在自己满意的电影的详情页面的最后,可以直接选择购买操作。具体流程如下图3-1所示:

 

图3-1 用户操作流程图

为了保证系统的安全性,要使用本系统对系统信息进行管理,必须先登陆到系统中。其具体登录流程图如图3-1所示:

 

图3-1 系统操作流程图


第4章  架构设计

4.1  系统体系结构

电影推荐系统的结构图4-1所示:

 

图4-1 系统结构

登录系统结构图,如图4-2所示:

 

图4-2 登录结构图

系统结构图,如图4-3所示:

 

图4-3 系统结构图

4.2  数据库实体设计

数据库的功能就是对系统中所有的数据进行存储和管理。所有的数据可以在数据库中产时间的进行存储,方便用户的使用。而且所有的数据库中的数据也应该具有一定的共享性,任何的系统可以对一些数据进行使用,同时还应该保持一定的独立性,每一个数据库中的数据都有很强的安全性,可以被很好的存放到数据库,没有进行身份的验证是不能对这些数据进行查看和使用的。数据库的设计需要明确每一个实体之间的联系,系统的E-R图如下图所示:

 

图4-4用户管理实体属性图

电影信息管理实体属性图如图4-5所示。

 

图4-5电影信息管理实体属性图

4.3  数据库表设计

当电影推荐系统在运行的时候,数据库要能确保自己的独立性,想要哪部分的数据就选择相应的设置选项,对应的数据就会以表格的形式展现出来。当对这一个功能进行设置,他就会与数据库进行连接,会在对话框中弹出相应的数据源。

daily_movie

字段名称

类型

长度

不是null

主键

字段说明

daily_movie_id

int

11

主键

每日电影ID

movie_title

varchar

64

电影名称

alias

varchar

64

别名

director

varchar

64

导演

screenwriter

varchar

64

编剧

performer

varchar

64

演员

type

varchar

64

类型

country

varchar

64

国家

language

varchar

64

语言

particular_year

varchar

64

年份

film_length

varchar

64

片长

release_time

varchar

64

上映时间

official_website

varchar

255

官方网站

idmb_link

varchar

255

IDMB链接

idmb_score

varchar

64

IDMB评分

douban_score

varchar

64

豆瓣评分

awards

varchar

64

获奖情况

movie_poster

varchar

255

影片海报

similar_film_recommendation

varchar

64

相似电影推荐

plot

text

0

剧情

hits

int

11

点击数

praise_len

int

11

点赞数

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

forum

字段名称

类型

长度

不是null

主键

字段说明

forum_id

mediumint

8

主键

论坛id

display

smallint

5

排序

user_id

mediumint

8

用户ID

nickname

varchar

16

昵称

praise_len

int

10

点赞数

hits

int

10

访问数

title

varchar

125

标题

keywords

varchar

125

关键词

description

varchar

255

描述

url

varchar

255

来源地址

tag

varchar

255

标签

img

text

0

封面图

content

longtext

0

正文

create_time

timestamp

0

创建时间

update_time

timestamp

0

更新时间

avatar

varchar

255

发帖人头像

type

varchar

64

论坛分类

forum_type

字段名称

类型

长度

不是null

主键

字段说明

type_id

smallint

5

主键

分类ID

name

varchar

16

分类名称

description

varchar

255

描述

url

varchar

255

外链地址

father_id

smallint

5

上级分类

icon

varchar

255

分类图标

create_time

timestamp

0

创建时间

update_time

timestamp

0

更新时间

high_score_film

字段名称

类型

长度

不是null

主键

字段说明

high_score_film_id

int

11

主键

高分电影ID

movie_title

varchar

64

电影名称

alias

varchar

64

别名

director

varchar

64

导演

screenwriter

varchar

64

编剧

performer

varchar

64

演员

type

varchar

64

类型

country

varchar

64

国家

language

varchar

64

语言

particular_year

varchar

64

年份

film_length

varchar

64

片长

release_time

varchar

64

上映时间

official_website

varchar

255

官方网站

idmb_link

varchar

255

IDMB链接

idmb_score

varchar

64

IDMB评分

douban_score

varchar

64

豆瓣评分

awards

varchar

64

获奖情况

movie_poster

varchar

255

影片海报

similar_film_recommendation

varchar

64

相似电影推荐

plot

text

0

剧情

hits

int

11

点击数

praise_len

int

11

点赞数

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

ordinary_users

字段名称

类型

长度

不是null

主键

字段说明

ordinary_users_id

int

11

主键

普通用户ID

user_number

varchar

64

用户编号

user_name

varchar

64

用户姓名

user_gender

varchar

64

用户性别

examine_state

varchar

16

审核状态

recommend

int

11

智能推荐

user_id

int

11

用户ID

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

popular_movies

字段名称

类型

长度

不是null

主键

字段说明

popular_movies_id

int

11

主键

热门电影ID

movie_title

varchar

64

电影名称

alias

varchar

64

别名

director

varchar

64

导演

screenwriter

varchar

64

编剧

performer

varchar

64

演员

type

varchar

64

类型

country

varchar

64

国家

language

varchar

64

语言

particular_year

varchar

64

年份

film_length

varchar

64

片长

release_time

varchar

64

上映时间

official_website

varchar

255

官方网站

idmb_link

varchar

255

IDMB链接

idmb_score

varchar

64

IDMB评分

douban_score

varchar

64

豆瓣评分

awards

varchar

64

获奖情况

movie_poster

varchar

255

影片海报

similar_film_recommendation

varchar

64

相似电影推荐

plot

text

0

剧情

hits

int

11

点击数

praise_len

int

11

点赞数

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

praise

字段名称

类型

长度

不是null

主键

字段说明

praise_id

int

10

主键

点赞ID

user_id

int

11

点赞人

create_time

timestamp

0

创建时间

update_time

timestamp

0

更新时间

source_table

varchar

255

来源表

source_field

varchar

255

来源字段

source_id

int

10

来源ID

status

tinyint

1

点赞状态1为点赞,0已取消

第5章  系统实现

5.1  系统功能模块

电影推荐系统,在系统的首页可以查看首页、影片交流、公告栏、影片资讯、每日电影、高分电影、热门电影、我的跳转到后台等信息进行相关操作,如图5-1所示。 

 

图5-1系统首页界面图

用户注册,在用户注册页面可以填写账号、密码、姓名、昵称、手机等信息进行注册操作,如图5-2所示。在个人中心页面可以填写学号、密码、手机等信息进行更新操作,如图5-3所示。

 

图5-2学生注册界面图

 

图5-3个人中心界面图

新闻信息,在新闻信息页面中可以查看新闻信息标题、新闻信息名称、图片、新闻内容、发布时间、账号、社长姓名等信息,如图5-4所示。

 

图5-4新闻信息界面图

电影信息,在电影信息页面可以查看电影名称、别名、导演、编剧、演员、类型、语言、国家等信息进行添加,如图5-5所示。

 

图5-5电影信息界面图

5.2  用户功能模块

用户登录进入系统后台可以对首页、影片交流、公告栏、影片资讯、每日电影、高分电影、热门电影、我的等信息进行相应的操作管理,如图5-6所示。

 

图5-6用户功能界面图

每日电影列表,在每日电影页面中可以查看电影名称、类型、年份、豆瓣评分等信息,如图5-7所示。

 

图5-7每日电影界面图

热门电影列表,在每日电影页面中可以查看电影名称、类型、年份、豆瓣评分等信息,如图5-8所示。

 

图5-8热门电影推荐界面图

5.3  管理员功能模块

管理员登录,管理员通过输入界面上显示的信息然后点击登录就能登录到系统进行系统的使用了,如图5-9所示。

 

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

管理员登录进入系统之后,就可以对首页、轮播图、公告栏、管理员、影片交流、论坛分类列表、新闻列表、新闻分类列表、普通用户、每日电影、高分电影、热门电影系统管理等信息进行相应的操作管理,如图5-10所示。

 

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

用户管理,在用户管理页面中可以对账号、密码、姓名、性别、头像、电话、邮箱等信息进行修改或删除等操作,如图5-11所示。

 

图5-11用户管理界面图

第6章  系统测试

6.1  测试目的

随着互联网不断的发展,目前各大领域都利用互联网进行了信息的管理,因此产品能否存货,质量问题是很重要的标准,也决定着是否有更多的人使用。所以软件的质量我们必须要把关,必须要把软件做好,做到位,少出不必要的问题,这样才能有更多的用户使用,并且得到更多的推广。所以,我们在开发完系统后,需要进行大量的测试,以确保系统的稳定性和可使用性,并要确定系统的质量能否做到满足不同人的需求。这是系统在开发设计中非常重要的环节,测试的结果直接关系到系统的好坏。

集成测试:在系统测试当中会出现很多的问题,我们要及时的进行标注并且在进行测试的时候要采取自动化的测试,这样即准确又快速,而且不会出现疲劳,手动的测试很容易出现疲劳期,而且测试的结果也有时候会出错,所以在测试的时候才去自动测试时最好的测试方法。

在测试的过程中及时的发现问题,并且进行问题的解决,这样设计出的系统可以正常稳定的运行,不会出现重大的问题。我所进行的软件测试参照以下三个步骤进行测试:

(1)模块测试:对系统中的每一项都进行针对的测试,发现并找到问题。

(2)系统测试:让系统长时间进行各种情况下的运行,反馈运行期间的稳定性问题并解决。

(3)验收测试:其他测试完成后,最后检测阶段,确保软件准备就绪。

6.2  测试方法

在对系统进行测试的时候我们主要应用到两种测试的方法,通过测试我们就能找出可能存在的问题保证系统成功运行。

从软件的内部构造和具体实施是否有关系的观点来看:黑盒测试和白盒测试。

1)黑盒测试:测试系统功能,当用户进行相应的操作时,系统是否能够及时且准确的反馈数据,并执行相应功能。需要对功能以及使用方法进行详细的测试,保证所有的操作信息都能够完整的输出输入。

2)白盒测试:主要是对系统的结构进行测试,了解系统在运行过程中是否可以正常的工作。

电影推荐系统的测试也会从下面几方面进行:

(1)窗体测试:例如用户登录界面,在用户名和密码输入时,需要界面窗口弹出,给予用户反馈,我对窗口的设计进行了测试,确保每一个窗口在用户进行相应操作后,能够及时的弹出。

(2)数据跟踪:进行数据跟踪,我们就能知道系统功能是否在顺利的执行当中。将数据库中的相关的信息进行调动,弹出我们需要的相对应的数据信息。同时,在追踪过程中,我们也更容易的发现系统的问题所在,便于解决问题和维护系统。

(3)综合测试:完成上述测试后,需要对系统进行由内而外的重新检测,来宏观的发现系统中存在的问题,并且及时的进行解决,系统的设计要结合实际的使用情况有针对性的进行开发,可以满足不同人的需求。

6.3  功能测试

本电影推荐系统设计基本达到我理想的开发状态,在各个功能的运行方面,表现较为良好,基本满足用户的使用需求,及时矫正了较多的错误信息。总体说来,软件通过了相应的测试。

表6-1:用户登录测试表

模块名称

测试用例

预期结果

实际结果

是否通过

登录模块

用户名:admin   密码:123  

弹出错误提示,提示密码错误

弹出错误提示,提示密码错误

通过

登录模块

用户名:123   

密码:admin   

弹出错误提示,提示用户名错误

弹出错误提示,提示用户名错误

通过

登录模块

用户名:admin   

密码:admin   

管理员登录成功

管理员登录成功

通过

表6-2:修改密码测试表

模块名称

测试用例

预期结果

实际结果

是否通过

修改密码模块

原密码:666

新密码:123

确认密码:123  

弹出错误提示,提示原密码错误

弹出错误提示,提示原密码错误

通过

修改密码模块

原密码:admin   新密码:123

确认密码:333  

弹出错误提示,提示确认密码不一致

弹出错误提示,提示确认密码不一致

通过

修改密码模块

原密码:admin   新密码:123

确认密码:123  

密码修改成功

密码修改成功

通过

6.4  测试结论

测试的过程要按照指定好的计划一步一步的实行,测试时候一定不要着急,并且将测试的结果进行详细的记录,我们在进行测试的时候做好选择自动化的测试,这样更加的准确也更快捷,如果采用人工测试的方法就不会这么的方便,很可能会出现一些问题,而且极其测试不会疲劳也不会出现问题。在测试的时候一定要非常专注,时刻关注着测试的结果,一旦发现异常及时进行修改,;最后,测试完之后的文档应该保存下来,方便以后测试时用到。

通过测试,我们也可以直观的感受到,在我们最开始进行系统设计的时候,先把思路理清楚,才能有机会把代码写好。有好的逻辑性的代码在后期的测试中才能避免出现问题,也可以给我们节省很多的时间和不必要的操作。


第7章 结  论

 电影推荐系统为用户提供了公平的、相互包容的、操作方便的使用系统,基本满足了用户的使用需要,以及我最初的开发目标和方向。Java语言、MySQL数据库等技术时是我开发的基础,这些技术都有各自的优点,学好这些技术,至关重要。通过这些优点设计出来的系统能够正常稳定的运行,并且可以满足人们的所有需求,在对系统的需求以及各个模块进行了详细的分析后,有针对性的进行设计,最后通过测试,系统能够正常的运行,该电影推荐系统设计完成。

本次开发过程中使用的是Java技术,该技术具有代码编写简单方便,对平台没有要求对技术方面也没有要求,并且有很好的面像对象性,所以在技术方面是相当成熟的。利用java技术作为系统主要的技术支持可以使得系统能够正常的运行并且实现相应的功能。在这次的系统的设计过程中遇到了很多的困难,幸好有老师同学们的帮助,在他们的帮助下完成了这次系统的设计。

除开系统的设计方面,就商业因素而谈,该网站具有很好的商业前景。电影推荐系统不像线下实体店,品牌价值在购买影响因素中尚未成较大比例,诸多国内外新兴电影正纷纷涌进。这也使得品牌复杂多样,电影种类繁多,而且不能单纯的以电影论好坏。消费者在选购产品时,容易凌乱,不清楚自己的实际需要,从而造成不必要的耗费。此网站的设立就是为了将各类型电影的具体信息进行统计规划,让消费者可以方便的在各电影之间进行横向对比。而且,网站还会提供最新的电影小时情报,做出新的消息报道。且宣传网站的成本要比品牌低的多,在预算层面,我的网站有着相应的优势。


参考文献

[1]刘学玉.JAVA编程语言在计算机软件开发中的应用[J].电子技术与软件工程,2022(01):57-60.

[2]陈玥.基于Java语言开发的宿舍管理系统[J].信息与电脑(理论版),2021,33(21):38-40.

[3]吴迪.Java编程语言在计算机软件开发中的应用[J].信息与电脑(理论版),2021,33(20):29-31.

[4]张翔.浅谈JAVA编程语言在计算机软件开发中的应用[J].电子元器件与信息技术,2021,5(10):204-205.DOI:10.19772/j.cnki.2096-4455.2021.10.095.

[5]曹瑞燕.Java语言在软件开发中的应用[J].信息记录材料,2021,22(10):96-97.DOI:10.16009/j.cnki.cn13-1295/tq.2021.10.045.

[6]杜继明.Java语言中的图像处理[J].信息记录材料,2021,22(09):124-125.DOI:10.16009/j.cnki.cn13-1295/tq.2021.09.058.

[7]蔡俊豪,王桂荣.Java在互联网的应用分析[J].电子技术,2021,50(06):44-45.

[8]林国富,段润英.Java语言程序设计课程教学改革探究[J].科学咨询(教育科研),2021(06):110-111.

[9]任鑫梅,刘小英.高校电影推荐信息系统的设计与实现[J].电脑知识与技术,2021,17(11):31-32+35.DOI:10.14004/j.cnki.ckt.2021.0923.

[10]Siyi Liu. Explore Java Language and Android Mobile Software Development[J]. International Journal of Frontiers in Engineering Technology,2021,3.0(2.0).

[11]秦蓉.基于Java语言的安卓软件开发研究[J].电子技术与软件工程,2021(05):44-45.

[12]符毓晟.高校学生电影推荐系统设计与实现[J].电脑知识与技术,2020,16(27):75-78.DOI:10.14004/j.cnki.ckt.2020.2879.

[13]曹光辉.基于Web的高校电影推荐系统设计与实现[J].无线互联科技,2020,17(08):38-40.

[14]Hu Xin,Yan Chaobing. Development and application of JAVA language development test evaluation system software[J]. Journal of Computational Methods in Sciences and Engineering,2020,20(4).

[15]惠苗,张晓冬.“互联网+”高校电影推荐系统的设计与实现[J].萍乡学院学报,2019,36(03):78-83.

[16]海莉花.基于模糊评价体系的高校电影推荐系统研究[J].电子设计工程,2019,27(12):30-33+38.DOI:10.14022/j.cnki.dzsjgc.2019.12.005.

[17]张冰,梁致远,田元元,严竞雄.基于Web的高校电影推荐系统的设计与实现[J].信息与电脑(理论版),2019(07):109-112.

[18]罗超,王志辉.高校电影推荐信息系统的设计与实现[J].信息记录材料,2019,20(04):27-28.DOI:10.16009/j.cnki.cn13-1295/tq.2019.04.011.

[19]周洋,何丽丽.基于B/S模式的高校电影推荐系统的研究与设计[J].电脑知识与技术,2018,14(33):84-85+96.DOI:10.14004/j.cnki.ckt.2018.3877.

[20]彭科.高校学生电影推荐系统分析[J].山西青年,2016(17):223.


致  谢

光阴似箭,一晃大学生活即将过去了。一直以严谨的态度和积极的热情投身于学习和工作中,虽然有竞争,也有泪水,但是通过我不断学习和奋斗不断的完善自己,不仅很好的完成了我的学业而且也让我的各方面得到了发展,取得了很大的进步。

大学的生活也即将结束,虽然也有许多的不舍,但是终究是要告别的。回想大学的学习生活,有泪水也有汗水。在此期间我严格要求自己,凭着对知识的强烈追求,刻苦钻研,勤奋好学,态度端正,目标明确,牢固的掌握了一些专业知识和技能,做到了理论联系实际。除了专业知识的学习外,我还不断的扩展我的知识面,从不同的领域以不同的方式来获得新的知识。争取成为一名各方面都很合格的大学生。

这次的毕业设计,是我独自完成周期最长,也是耗力最大的一个项目。值得庆幸的是,在我毕业设计完成的过程当中,有许多帮助我的同学和老师。在几个月的开发过程中,我遇到了大大小小无数个问题。是我的舍友和老师,不断地帮助鼓励。

我的指导老师,在自身工作十分繁忙的情况下,依然能做到及时恢复我们发去的问题邮件,并抽时间对我们进行线下的辅导。指出我们设计上的失误,逻辑错误以及产品力规划问题,可以说没有导师的帮助,我的毕设会陷入死胡同,是导师为我指点了迷津,像迷雾中的路灯,为我指明方向!


点赞+收藏+关注 → 私信领取本源代码、数据库

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

springboot基于JAVA的电影推荐系统的开发与实现 附源码-毕业设计112306 的相关文章

  • Centos7.x升级内核

    文章目录 引言安装elrepo并修改为默认从清华源下载查看可用内核安装包 更新内核卸载多余的内核安装稍微没那么新版本的内核 引言 默认情况下Centos7 9的内核是3 10 xff0c 咱们给他升级一下 span class token
  • 自动化测试工具——Selenium详解

    目录 前言 Selenium的几个特点 seleniun组成部分 selenium RC selenium IDE selenium Grid selenium webDriver 那么selenium RC 与webdriver 主要有什
  • 远程访问及控制SSH 服务

    目录 前言 一 SSH概述 二 SSHD服务 2 1 远程登录 2 2 文件传输 三 SSH服务配置 3 1 SSH服务安全调优 3 2 SSH服务验证 四 密钥对构建 4 1 密钥对原理 4 2 远程拷贝 scp 4 2 1 本地文件复制
  • 前端 - get请求传递数组,出现400 Bad Request错误。

    原因 xff1a 如果请求参数中带有中括号 xff0c 在url中属于功能性字符 xff0c 入参会发生变化 xff0c 出现400 Bad Request错误 你提供的入参 params 61 b 1 2 3 后端接受到的参数 param
  • @Autowired自动装配原理

    一 64 Autowired自动装配 当我们在IDEA中不使用xml配置文件的时候 xff0c 这时候我们就需要 64 Autowired注解 xff0c 该注解的原理如下 xff1a 1 在启动Spring IOC时 xff0c 容器自动
  • zabbix邮箱告警

    1 1 邮件通知 xff1a 通过企业邮箱 第三方服务商邮箱发送报警邮件通知运维工程师 1 2 邮箱开启SMTP xff1a 如果是QQ邮箱需要单独开启SMTP xff0c 其他邮箱具体联系服务商 确认是已经打开状态 xff0c 如果是未开
  • 配置本地yum源仓库

    配置本地yum源仓库 mount dev cdrom mnt 把光盘挂在到mnt目录下 xff0c xff0c xff0c 因为制作本地yum仓库 xff0c 其目的是需要 rpm文件 xff0c 但是不借助网络 xff0c 本地只有iso
  • MySQL完全备份与恢复

    文章目录 MySQL完全备份与恢复数据备份的重要性数据库备份的分类从物理和逻辑角度分1 物理备份2 逻辑备份 从数据库的备份策略角度 xff0c 备份可分为常见的备份方法MySQL完全备份 优点 缺点 差异备份增量备份 备份方式的比较数据库
  • 成长记录-开启我的新生 (2016-12-06)

    真的是很惊险 xff0c 我差一点就错过了 获得新生 的机会 xff0c 我在蜻蜓音频中听到了逻辑思维 xff0c 从逻辑思维中了解到了 得到 xff0c 从 得到 中订阅了吴军博士的 硅谷来信 xff0c 却在过去的好几个月里 xff0c
  • Maven搭建Mybatis框架详解

    本章我们主要讲述在Maven管理系统下 xff0c 引入Mybatis框架的流程 xff0c 大致分为四个部分 xff1a 1 Maven的环境配置及其项目创建 2 利用Maven的依赖管理 xff08 坐标定位 xff09 导入Mybat
  • 生产者--消费者问题算法的实现

    一 知识背景 1 xff0e 进程管理 2 xff0e 信号量的有关知识 二 目的 1 xff0e 了解信号量的使用 2 xff0e 加深对信号量机制的理解 三 要求 1 xff0e 理解生产者与消费者问题模型 xff0c 掌握解决该问题的
  • 添加修改数据时前端报400的原因

    1 向后端提交的字段跟数据库中的字段对不上 当我们添加或者修改数据时 xff0c 前端跟后端的字段可能对不上 xff0c 如果没有让前后端的字段名保持一致 xff0c 就会导致数据不能正常添加到数据库 xff0c 因此会报400 2 对于某
  • 数组蛇形排序,优质解决方案

    目录 1 题目要求 xff0c 按照指定的行列号内 xff0c 数组按照蛇形的规律排列 xff0c 1 题目要求 xff0c 按照指定的行列号内 xff0c 数组按照蛇形的规律排列 xff0c 比如 1 2 6 7 3 5 8 13 4 9
  • (经典C语言题)1.输入3个字符串,要求按由小到大的顺序输出

    1 总体思路 字符串的比较可以使用 strcmp 函数 xff0c 返回值 gt 0 表示大于 xff0c 返回值小于 0 表示小于 xff0c 返回追等 于 0 表示相同 其他的比较排序思路与数字的排序交换没有区别 xff0c 逐个进行比
  • 【经典C语言题】输入10个整数,将其中最小的数与第一个数对换, 把最大的数与最后一个数对换,要求是使用三个函数

    1 先用函数输入10个数 xff0c 再调整 xff0c 最后输出 2 整体思路 在进行数值逐个比较的同时找到最小值的空间地址以及最大值的空间地址 xff0c 使用这两个空间 中的数据最终与第一和最后数据进行对换即可 3 上代码 1 先解决
  • (C语言经典题)有n个整数,使前面各数顺序向后移m个位置,最后m个数变成最前面m个数,

    解题思路 1 2 3 4 5 6 7 8 9 前面都向后移动2的话 8 9 1 2 3 4 5 6 7 可以看出就是8 9 换到前面了 先保存最后一位的值9 xff0c 然后前面的所有数字后移一位 xff0c 再把9放到第一位 接下来就是重
  • git简单使用流程

    通过 git status 查看文件的状态 stage 暂存 commit 提交 history 历史 git本地库 push 推送 pull 拉取 remote 远的 repository 仓库 clone 克隆 上传step 1 git
  • MT8788 Android11 修改默认字体,字体大小和像素密度

    环境 MT8788 Android11 ili9881p hd720 dsi vdo 1 修改默认语言 目录 b device mediateksample tb8788p1 64 bsp vnd tb8788p1 64 bsp mk 内容
  • MT8788 Android11 tp 启动流程

    环境 MT8788 Android11 focaltech touch HD720 5寸tp log信息 分析步骤 一 获取dts信息 和 添加驱动到内核 1 获取dts设备树中配置的信息 2 将tp厂商的驱动文件注册添加到 tpd dri
  • 最新Java电子书

    最新Java电子书 JAVA参考大全 J2SE 5EDITION 世界级程序设计大师作品 Thinking in Java第三版 43 第四版 xff08 中文版 43 习题答案 xff09 Java数据库高级编程宝典 Java核心技术第八

随机推荐

  • 关于mtk配置文件的一些说明

    一 ProjectConfig mk 共三种区别 1 AUTO ADD GLOBAL DEFINE BY NAME类型 xff1a 将它后面的名字 xff0c 定义为宏是没有初始值的 define XXX 2 AUTO ADD GLOBAL
  • 监控平台(windows版本)使用SDK的方式接入摄像头

    一 登录进入监控平台管理端 二 添加设备 1 依次点击左侧菜单栏中业务管理 设备管理 xff0c 进入到设备管理界面 如下图 2 点击设备列表字样下的添加按钮添加设备 如下图 3 在添加设备中按如下方式填写 设备编号 可根据需求自行填写 国
  • 认识HTML

    目录 HTML介绍HTML结构HTML常用标签注释标签标题标签段落标签和换行标签格式化标签图片标签超链接标签表格标签列表标签表单标签form和input标签其他标签 无语义标签 HTML特殊字符 HTML介绍 HTML全称是超文本标记语言
  • spring超全面详解

    spring概述 Spring 是于2003年兴起的一款轻量级的 非侵入式的IOC和AOP的一站式的java开发框架 为简化企业级应用开发而生 1 轻量级 就是指spring核心功能的jar包不大 2 非侵入式 我们的业务代码不需要继承或实
  • 虚拟机怎么从图形界面转到命令行(去掉桌面)

    点击 xff1a ctrl 43 alt 43 F1切换到桌面 点击 xff1a ctrl 43 alt 43 F5切换命令行 xff08 去掉桌面 xff09
  • springboot是怎么实现自动配置的?

    一 springboot是对spring框架做的一系列优化 xff0c 减少了大量繁琐的配置 xff0c 并提供了内置web服务器 xff0c 让程序运行更快 1 springboot起步依赖 xff1a 简单的说 xff0c 起步依赖就是
  • 第三章 Linux文件目录查找

    Find命令 find命令在Linux中搜索效果非常不错 xff0c 不仅可以按照文件名搜索文件 xff0c 还可以按照权限 时间 容量大小等来搜索文件 xff0c 但是find命令它是通过递归式在硬盘中进行搜索的 xff0c 如果指定的搜
  • 超市购物小程序

    编写一个超市购物程序 xff0c 在一家超市有牙刷 毛巾 水杯 苹果和香蕉五种商品 xff1a 拥护输入序列号进行购物 xff0c 并在输入购物数量后算出所需花费及退出购物时的总花费 一次购买结束后 xff0c 需用户输入 34 Y 34
  • 链游是什么?

    链游 从字面上理解它就是区块链上的游戏 xff0c 也被称作gamefi xff08 Gaming and Decentralized Finance xff09 在国内也被称为金融性游戏 在链游中玩家除了能够有玩游戏的体验之外也能够参与交
  • 出现error ‘props‘ is defined but never used 这种eslint相关的报错,关闭eslint的方法

    最近做项目遇到如下报错 xff1a cmd终端中 xff1a 为了关闭这个eslint报错 xff0c 可以用如下方法 xff1a 针对自己创建的新项目的话 xff0c 是在项目文件夹中的vue config js 中 此处项目是用Vue
  • 关于JAVA中内存溢出的解决办法

    关于JAVA中内存溢出的解决办法 J2ee应用系统是运行在J2EE应用服务器上的 xff0c 而j2ee应用服务器又是运行在JVM上的 xff0c 生成环境中JVM参数的优化和设置对于J2EE应用系统性能有着决定性的作用 要优化系统 xff
  • 用FTPClient上传文件,执行this.ftpClient.storeFile(fileName, inStream)报错

    this ftpClient storeFile fileName inStream 方法执行时无反应 xff0c 最后提示错误 原因 xff1a 代码中加了多了一个设置 this ftpClient enterLocalPassiveMo
  • Python+ADB脚本

    目录 准备工具 问题解决 xff1a 如何安装adb和python xff1f 编写程序 实现 注意 xff1a 准备工具 进入正题 xff0c 首先要准备的工具如下 1 一台正常的电脑且安装adb和python环境 2 一部安卓手机 4
  • springboot+vue+协同过滤算法电影推荐网站

    源码获取 xff1a 文末获取联系方式 xff01 一 项目运行 环境配置 xff1a Jdk1 8 43 Tomcat 8 5 43 Mysql 43 VUE 43 IDEA xff08 Eclispe MyEclispe Sts都支持
  • Ubuntu20.04下基于ROS和PX4的无人机仿真平台的基础配置搭建(我所遇到的问题)

    写在前面 xff1a 我目前也处于学习阶段 xff0c 当时按照ROS教程安装的20 04 xff0c 随后搭建XTDrone阶段因为版本问题出现了很多问题 xff0c 这是我根据问题 xff0c 检索后汇总的一些解决措施 本文中提到的问题
  • 手机如何远程连接linux系统的VPS

    1 首先下载安装APP xff1a iTerminal 2 运行iTerminal xff0c 然后点击SSH栏 3 然后按要求填入各项内容 xff0c 确认都正确后点击底下的连接按钮 4 如图连接成功后即可在手机上操作了
  • 学习总结

    错误 xff1a TypeError ERR INVALID ARG TYPE The 34 id 34 argument must be of type string Received an instance of IncomingMes
  • Java笔记_3(循环)

    Java笔记 3 一 判断与循环1 1 顺序结构1 2 分支结构1 2 1 if语句1 2 2 switch语句 1 3 循环结构1 3 1 for循环1 3 2 while循环1 3 3 do while循环 1 4 回文数的判断1 5
  • 关于getchar的用法及实例解析

    一 getchar 函数是什么 xff1f getchar 函数是获取一个字符 说到这里就有人问了 xff0c 为什么他的返回类型是int xff1f 因为实际上EOF 61 end of file xff08 1 xff09 xff0c
  • springboot基于JAVA的电影推荐系统的开发与实现 附源码-毕业设计112306

    目 录 摘 要 4 Abstract 5 第 1 章 前 言 6 1 1 研究背景 6 1 2 研究现状 6 1 3 系统开发目标 6 第 2 章 技术与原理 8 2 1 JSP 介绍 8 2 2 JAVA 技术 8 2 3 MySQL 数