版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
湖南商务职业技术学院毕业设计
目录
1引言4
1.1项目开发背景4
1.2开发技术简介4
1.2.1Python简介4
1.2.2Tkinter模块简介5
1.2.3MySQL简介5
1.3开发工具简介6
1.4项目开发环境与部署6
2需求分析6
2.1功能需求描述6
2.2非功能需求描述6
2.3需求用例建模7
2.3.1普通用户功能用例7
2.3.2管理员用户功能用例10
3系统概要设计13
3.1系统设计原则13
3.2系统功能模块设计13
3.2.1用户登录注册模块设计14
3.2.2电影数据展示模块设计15
3.2.3电影榜单模块设计16
3.2.4个人中心模块设计17
3.2.5数据管理模块设计18
3.3数据库设计19
3.3.1设计原则19
3.3.2概念设计19
3.3.3逻辑设计20
3.3.4数据字典20
I
湖南商务职业技术学院毕业设计
4系统详细设计21
4.1用户登录模块设计21
4.1.1用户登录注册模块说明21
4.1.2用户登录注册功能模块详细设计22
4.2电影数据展示模块设计23
4.2.1电影数据展示模块说明23
4.2.2电影数据展示模块详细设计23
4.3电影榜单功能模块设计24
4.3.1电影榜单功能模块说明24
4.3.2电影榜单功能模块详细设计24
4.4电影查询模块设计25
4.4.1电影查询模块说明25
4.4.2电影查询模块详细设计25
4.5个人中心模块设计26
4.5.1个人中心模块说明26
4.5.2个人中心模块详细设计26
4.6数据管理模块设计27
4.6.1数据管理模块说明27
4.6.2数据管理模块详细设计28
5系统实现30
5.1用户登录注册模块实现30
5.1.1用户登录注册模块界面设计30
5.1.2用户登录功能核心代码实现30
5.1.3用户注册功能核心代码实现31
5.2电影数据展示模块实现32
5.2.1电影数据展示模块界面设计32
5.2.2电影基本信息及评论展示功能核心代码实现32
5.2.3添加评论模块功能代码实现35
II
湖南商务职业技术学院毕业设计
5.3电影榜单模块实现37
5.3.1电影榜单模块界面设计37
5.3.2电影榜单模块核心代码实现37
5.4电影查询模块实现38
5.4.1电影查询模块界面设计38
5.4.2电影查询模块核心代码实现38
5.5个人中心模块实现39
5.5.1个人中心模块界面设计39
5.5.2修改密码功能核心代码实现40
5.5.3我的评论模块功能代码实现41
5.5.4删除账号模块功能代码实现42
5.6数据管理模块实现43
5.6.1数据管理模块界面设计43
5.6.2添加电影数据功能核心代码实现43
5.6.3删除电影数据功能核心代码实现44
5.6.4添加评论数据功能核心代码实现45
5.6.5删除评论数据功能核心代码实现46
5.6.6更改用户权限模块核心代码实现46
6系统测试47
6.1个人中心功能测试47
6.2电影数据展示功能测试48
6.3电影查询功能测试50
6.4数据管理功能测试51
7设计小结55
参考资料56
III
湖南商务职业技术学院毕业设计
基于python的电影评分系统设计
1引言
自1987年著名的电子邮件“越过长城,走向世界”发出为始至今日,我国
互联网发展已有三十多年。看似简短的发展历史却有着令人惊叹的速度,其影响
甚至远超预期,无“网”不利。人们的文化娱乐也早已与网络息息相关。
电影产业从前只依赖影院的经营模式早已不能满足人们日益增长的精神文
化需求,因此随之出现的各大影视平台迅速占领市场,无数新旧电影纷纷上架。
可电影独特的时长容易使人望而却步,快节奏的生活令人们有了各种顾虑,
一部1到2小时不等的电影通过简单的介绍很难了解其时长与内容是否成正比、
是否值得花时间观看,即使有专门的推荐博主制作视频进行介绍也意味着被剧透。
这时就会有用户查看评论——但评论仍然会有不确定因素,比如一些长评长如文
章可能剧透、一些短评毫无内容水分很高,或是评论者与自身三观冲突难以判断,
再或者有部分用户恶意差评进行干扰。一部电影可能评论数以万、十万甚至千万
计,凭借肉眼能够提取的信息可谓寥寥无几。也因此,一个能够对电影评论进行
分析、内容提取的平台对观众而言就十分友好了。
1.1项目开发背景
猛烈而迅速的发展使时下各领域与互联网的关系已然密不可分、层层渗透,
而如今互联网的高效性使人们对信息唾手可得的同时也令人眼花缭乱。对于一部
热议电影的评论而言,我们的肉眼无法大量甄别、获取信息,且过量的信息阅读
起来只会吃力不讨好。本设计介绍的电影评分系统能够适当的截取评论中的信息
并展示,令人能够直观的了解观众对于电影的印象,从而使用户产生主观判断。
本系统基于Python编程语言设计,利用其标准模块Tkinter实现界面交互,
通过MySQL数据库完成数据存储。本系统能够查询电影信息并进行展示,且为用
户提供对评论数据进行可视化绘图的服务,使查询时能更加一目了然,方便用户
获取信息。
1.2开发技术简介
1.2.1Python简介
Python是一款效率极高的面向对象的开源编程语言。
横向对比其他语言,Python简洁的语法、易懂的关键字命名、强制规范代
码等使使用者在开发维护的过程中更加简便。Python庞大的标准库及第三方库
4
湖南商务职业技术学院毕业设计
使开发人员能处理各种工作,包括但不限于Web、GUI、线程、数据库、网络爬
虫、数据分析等。
Python部分库简介:
(1)BeautifulSoup:用于获取HTML或XML文件数据的第三方库,提供一
些简单的函数用来处理导航、搜索、修改分析tree等功能,通过解析文档为使
用者抓取数据。
(2)Re:通过正则表达式匹配字符串的标准库。
(3)urllib:用于处理URL的标准库,能够通过网络访问文件;
(4)PyMYSQL:适用于Python3.X版本的MySQL数据库连接驱动,能够在Py
thon中实现简单的增删改查。
(5)Matplotlib:Python中最受欢迎的数据可视化库之一,是Python最
常用的2D绘图库,数据分析的重要工具之一。
(6)WordCloud:词云,用于数据分析的第三方库。
(7)Jieba:优秀的中文分词第三方库,在本设计中配合词云使用。
1.2.2Tkinter模块简介
Tkinter模块(Tk接口,以下简称tk模块)作为Python标准TkGUI(即Pyt
hon语言内置的标准GUI库,在大多数Unix平台、Windows和Macintosh系统上
可用)的接口,允许Python在Tkinter中快速创建图形界面应用程序。
Tkinter是一个面向对象的程序,它将Tcl/Tk函数封装为允许定位、显示
和控制控件的类。控件的属性,如Frame、Label、Button、Entry、Text、
Canvas、Scrollbar等,都可以指定关键字参数,控件由Gird、Pack及Place
管理,但当它们位于同一个小部件中时,可能会发生冲突。对于各窗体、控件等
则通过资源绑定到事件(关键字参数命令绑定等)或bind()进行控制。
1.2.3MySQL简介
MySQL数据库是现今最流行的关系型数据库管理系统之一,其特点是体积小、
速度快,拥有成本低,且代码开源。
除了能作为一个单独的应用程序嵌入客户端服务器网络环境,MySQL数据库
也能作为一个库嵌入其他编程语言中。作为关系型数据库,MySQL将数据存放于
不同的表(Table)中而非同一个仓库,这使MySQL的运行提速的同时也增加了
灵活性。MySQL支持多线程以充分利用CPU资源,也支持大型数据库处理上万条
记录的大型数据库。
5
湖南商务职业技术学院毕业设计
1.3开发工具简介
工具的使用:PyCharm2021(CommunityEdition)、Navicat16、Anaconda。
PyCharm作为一款Python的集成开发环境,具有编码协助、项目代码导航、
代码分析、图形页面调试器、集成的单元测试等特点,足以满足一般的Python
项目开发要求。
Navicat兼容多种不同类型的数据库,具备完善的GUI。不论对于专业开发
人员还是普通用户而言,都操作简单、方便快捷。
Anaconda直译“巨蟒”,是一个开源的Python发行版本,包含Python、conda
在内的多个科学包及其依赖项,能在同一设备上安装不同版本的软件包及依赖且
支持在不同环境间相互切换。
1.4项目开发环境与部署
本设计基于Python编程语言进行开发,后端采用MySQL数据库,通过
PythonGUI实现用户交互,开发环境与部署如下:
(1)操作系统:Windows10系统。
(2)开发工具:Python3.8、MySQL5.5.20。
2需求分析
2.1功能需求描述
本系统的主要目的是辅助用户以更直观的方式获取一部电影的评论观点,过
滤掉大量的无意义信息,使用户只需一眼扫过就能领略其中的内容主旨,从而对
电影进行了解。
而系统主要从两个角色入手:普通用户、管理员用户。普通用户可以在系统
中查看电影榜单、搜索电影信息、在电影下发表评论、管理账号信息;管理员用
户则可以管理系统数据。
2.2非功能需求描述
本系统的非功能性需求有以下几个方面:
(1)易用性:本系统简单易使用,具有一定的GUI方便操作。
(2)运行可行性:本系统耗费资源非常小,一般设备无论是硬件软件都能
够满足条件。
(3)可复用性:系统在设计时组件基本统一。
6
湖南商务职业技术学院毕业设计
2.3需求用例建模
通过对功能需求的分析,创建以下总体用例模型,如图2-1所示。
图2-1电影评分系统的总体用例模型
本系统总体需求分为普通用户需求和管理员用户需求,除了数据管理功能、
注册功能(新注册账号权限仅为普通用户)外其他功能共用。
2.3.1普通用户功能用例
根据总体用例模型分析梳理,普通用户在使用过程中具体的用例描述如图
2-2所示,分别具有登录、注册、查询电影信息、管理个人信息等操作功能。
图2-2普通用户功能用例图
通过进一步细化分析,得出以下用例描述表。
表2-1为登录功能用例描述。
表2-1登录功能用例描述
项目描述
用例名称用户登录
用例标识号01
参与者管理员、普通用户
7
湖南商务职业技术学院毕业设计
参与者输入账号、密码,系统进行验证后,合法则登录系
简要说明
统,否则拒绝登录
前置条件参与者已打开系统登录页LoginSigninPage.py
1.参与者依次在账号、密码输入框中输入
2.单击登录按钮后,系统验证参与者输入的有效性
基本事件流
3.有效则进入系统的主界面,无效则提示相应错误给用户
4.用例终止
在按登录按钮之前,参与者可以单击登陆窗口的关闭按钮
其他事件流
退出程序
异常事件流提示错误信息,参与者确认
后置条件进入的主界面MainPage.py,装载相应的数据
表2-2为注册功能用例描述。
表2-2注册功能用例描述
项目描述
用例名称用户注册
用例标识号02
参与者新用户
参与者输入账号、密码、二次确认密码进行验证后,合法
简要说明
则注册账号并登陆系统,否则拒绝注册
参与者已打开系统登录页LoginSigninPage.py,并单击注
前置条件
册按钮跳转注册页
1.参与者依次在账号、密码、确认密码输入框中输入
2.单击注册并登录按钮后,系统验证参与者输入的有效性
基本事件流
3.有效则进入系统的主界面,无效则提示相应错误给用户
4.用例终止
在按注册并登录按钮之前,参与者可随时单击返回按钮返
其他事件流
回登录页或单击窗口的关闭按钮退出程序
异常事件流提示错误信息,参与者确认
后置条件进入的主界面MainPage.py,装载相应的数据
表2-3为电影信息查询功能用例描述。
表2-3电影信息查询功能用例描述
项目描述
用例名称电影信息查询
用例标识号03
参与者普通用户、管理员
8
湖南商务职业技术学院毕业设计
参与者输入关键字后进行搜索,搜索成功则显示搜索结果,
简要说明
否则提示错误信息
前置条件参与者已打开系统搜索页SearchFrame.py
1.参与者在下拉菜单中选择任意搜索方式
2.在搜索框里输入关键字
3.单击搜索按钮后,系统验证参与者输入的有效性
基本事件流
4.有效则显示结果按钮,无效则提示相应错误给用户
5.单击任意搜索结果,跳转信息页并显示内容
6.用例终止
进入信息页后,参与者可单击写评论按钮进入编辑页发表
其他事件流
评论或下滑页面单击查看按钮进入评论页查看详情
异常事件流提示错误信息,参与者确认
后置条件进入电影信息页ShowData.py,装载相应的数据
表2-4为修改密码功能用例描述。
表2-4修改密码功能用例描述
项目描述
用例名称修改密码
用例标识号04
参与者普通用户、管理员
参与者输入旧密码、新密码、二次确认密码进行验证后,
简要说明
合法则在数据库中进行修改操作,否则拒绝修改
参与者已从个人中心页MyFrame.py进入修改密码子窗
前置条件
口
1.参与者依次在当前密码、新密码、确认密码输入框中输
入
基本事件流2.单击确认修改按钮后,系统验证参与者输入的有效性
3.有效则进行修改操作,无效则提示相应错误给用户
4.用例终止
在按确认修改按钮之前,参与者可随时单击窗口的关闭按
其他事件流
钮退出子窗口
异常事件流提示错误信息,参与者确认
后置条件通过db.py在数据库中完成密码修改
表2-5为删除账号功能用例描述。
表2-5删除账号功能用例描述
项目描述
用例名称删除账号
9
湖南商务职业技术学院毕业设计
用例标识号05
参与者普通用户、管理员
参与者输入密码、二次确认密码进行验证后,合法则在数
简要说明
据库中进行删除操作,否则拒绝删除
参与者已从个人中心页MyFrame.py进入删除账号子窗
前置条件
口
1.参与者依次在密码、确认密码框中输入
2.单击确认删除按钮后,系统验证参与者输入的有效性
基本事件流
3.有效则进行删除操作,无效则提示相应错误给用户
4.用例终止
在按确认删除按钮之前,参与者可随时单击窗口的关闭按
其他事件流
钮退出子窗口
异常事件流提示错误信息,参与者确认
后置条件通过db.py在数据库中完成账号删除
表2-6为查看个人评论功能用例描述。
表2-6查看个人评论功能用例描述
项目描述
用例名称查看个人评论
用例标识号06
参与者普通用户、管理员
简要说明参与者查看当前登陆账号发表的评论
前置条件参与者已进入个人中心页MyFrame.py
1.参与者在个人中心页单击我的评论按钮进入子窗口
2.系统查询当前账号下的评论
基本事件流
3.返回数据不为空则显示评论列表,否则显示为空页
4.用例终止
进入我的评论页后,参与者可下滑页面单击查看按钮进入
其他事件流
评论页查看详情
异常事件流无
后置条件通过db.py返回数据
2.3.2管理员用户功能用例
根据总体用例模型分析梳理,管理员用户在使用过程中具体的用例描述如图
2-3所示,拥有普通用户功能的同时,具备管理电影、评论、用户数据的功能。
10
湖南商务职业技术学院毕业设计
图2-3管理员用户功能用例图
通过进一步细化分析,得出以下用例描述表。
表2-7为电影数据添加功能用例描述。
表2-7电影数据添加功能用例描述
项目描述
用例名称电影数据添加
用例标识号07
参与者管理员
简要说明参与者进行添加电影数据操作
参与者已从数据管理页RootFrame.py进入添加电影数据
前置条件
子窗口
1.参与者依次在电影编号、电影名称等输入框中输入数据
2.单击提交按钮后,系统验证各输入框是否不为空
3.验证通过后将获取的数据上传
4.用例终止
其他事件流参与者可随时单击窗口的关闭按钮退出子窗口
异常事件流提示错误信息,参与者确认
后置条件通过db.py将输入的数据导入数据库
表2-8为电影数据删除功能用例描述。
表2-8电影数据删除功能用例描述
项目描述
用例名称电影数据删除
用例标识号08
参与者管理员
简要说明参与者进行删除电影数据操作
11
湖南商务职业技术学院毕业设计
参与者已从数据管理页RootFrame.py进入删除电影数据
前置条件
子窗口
1.参与者在搜索框中输入关键字
2.单击搜索按钮后,系统验证参与者输入的有效性
基本事件流3.有效则显示结果按钮,无效则提示相应错误给用户
4.单击任意搜索结果进行删除操作
5.用例终止
参与者单击任意按钮前,可随时单击窗口的关闭按钮退出
其他事件流
子窗口
异常事件流提示错误信息,参与者确认
后置条件通过db.py将选中的数据在数据库中删除
表2-9为电影评论批量添加功能用例描述。
表2-9电影评论批量添加功能用例描述
项目描述
用例名称电影评论批量添加
用例标识号09
参与者管理员
简要说明参与者上传文件以批量添加评论数据
参与者已从数据管理页RootFrame.py进入添加评论数据
前置条件
子窗口
1.参与者单击打开文件按钮选择目标文件
2.单击上传文件按钮后,系统对文件数据进行预处理
基本事件流
3.处理完成后上传数据库
4.用例终止
其他事件流参与者可随时单击窗口的关闭按钮退出子窗口
异常事件流提示错误信息,参与者确认
后置条件通过db.py将处理后的数据导入数据库
表2-10为电影评论删除评论功能用例描述。
表2-10电影评论删除功能用例描述
项目描述
用例名称电影评论删除
用例标识号10
参与者管理员
简要说明参与者对评论数据进行删除操作
12
湖南商务职业技术学院毕业设计
参与者已从数据管理页RootFrame.py进入删除评论数据
前置条件
子窗口
1.参与者在搜索框中输入关键字
2.单击搜索按钮后,系统验证参与者输入的有效性
3.有效则显示结果按钮,无效则提示相应错误给用户
基本事件流
4.单击任意搜索结果跳转相应的评论列表子窗口
5.在子窗口中点击任意删除按钮进行删除操作
6.用例终止
参与者可单击任意查看按钮查看评论详情或随时单击窗口
其他事件流
的关闭按钮退出子窗口
异常事件流提示错误信息,参与者确认
后置条件通过db.py将选中的数据在数据库中删除
表2-11为更改用户权限功能用例描述。
表2-11更改用户权限功能用例描述
项目描述
用例名称更改用户权限
用例标识号11
参与者管理员
简要说明参与者对其他用户进行更改权限操作
参与者已从数据管理页RootFrame.py进入更改用户权限
前置条件
子窗口
1.参与者单击子窗口中任意修改按钮
基本事件流2.系统验证对应的用户权限后修改
3.用例终止
其他事件流参与者可随时单击窗口的关闭按钮退出子窗口
异常事件流无
后置条件通过db.py对选中的用户在数据库中进行修改操作
3系统概要设计
3.1系统设计原则
1.系统性:系统作为有机整体,统一信息代码、数据组织方法、设计规范和
标准,以提高系统的设计质量。
2.经济性:在满足系统要求的前提下,尽可能减少系统的经济支出。
13
湖南商务职业技术学院毕业设计
3.可靠性:设计出的系统安全可靠才能在实际使用中发挥其作用。
3.2系统功能模块设计
电影评分系统主要用于使普通用户查询浏览电影信息、评论及发表评论,管
理员用户除了查询浏览外,还能够上传电影信息数据及评论数据并进行管理,以
及管理普通用户权限。
如何衡量一个系统的完备性,系统功能实现的完整性作为基本标准十分重要。
综合本系统的需求分析,确定了本系统的主要功能模块,包括用户登录注册模块、
电影数据展示模块、电影榜单模块、电影查询模块、个人中心模块、数据管理模
块,如图3-1所示。
图3-1电影评分系统功能结构图
3.2.1用户登录注册模块设计
针对系统功能结构图进行进一步细化分析,得到各模块相关功能描述,功能
描述使用功能流程图描述,如下图3-3。
14
湖南商务职业技术学院毕业设计
图3-2用户登录注册模块流程图
表3-1用户登录注册模块相关功能描述
功能名称登录
功能概述所有用户共用同一登录页,完成验证后登陆系统
输入内容账号、密码
系统处理验证账号信息
输出内容操作成功或失败的提示
功能名称注册
功能概述未注册用户注册账号后登陆系统
输入内容账号、密码、二次确认密码
系统处理验证两次密码一致后,检测账号存在与否
输出内容操作成功或失败的提示
3.2.2电影数据展示模块设计
针对系统功能结构图进行进一步细化分析,得到各模块相关功能描述,功能
描述使用功能流程图描述,如下图3-3。
15
湖南商务职业技术学院毕业设计
图3-3电影数据展示模块流程图
表3-2电影数据展示模块相关功能描述
功能名称写评论
功能概述用户发表评论
输入内容用户账号、电影编号、评论标题、评论正文、评分
系统处理验证输入数据完整后向数据表中插入
输出内容操作成功或者失败的提示
功能名称查看评论
功能概述用户查看评论内容详情
输入内容评论编号
系统处理根据用户的点击返回相应内容
输出内容跳转显示评论的子窗口
16
湖南商务职业技术学院毕业设计
3.2.3电影榜单模块设计
图3-4电影榜单模块流程图
表3-3电影榜单模块相关功能描述
功能名称电影榜单
功能概述根据特定规则将电影排序显示
输入内容无
系统处理从数据库中调取数据并返回
输出内容在页面中显示数据
17
湖南商务职业技术学院毕业设计
3.2.4个人中心模块设计
图3-5个人中心模块流程图
表3-4个人中心模块相关功能描述
功能名称修改密码
功能概述用户更改登陆账号的旧密码
输入内容账户编号、旧密码、新密码、二次确认密码
系统处理验证密码后在数据库中进行修改
输出内容操作成功或者失败的提示
功能名称删除账号
功能概述用户删除登陆账号
输入内容用户账号、密码
系统处理验证密码后在数据库中进行删除
输出内容操作成功或者失败的提示
功能名称我的评论
功能概述用户查看登陆账号下发表的评论
输入内容用户账号
18
湖南商务职业技术学院毕业设计
系统处理从数据库中调取数据并返回
输出内容在页面中显示数据
3.2.5数据管理模块设计
图3-6数据管理模块流程图
表3-5数据管理模块相关功能描述
功能名称添加电影数据
功能概述管理员添加电影信息
输入内容电影编号、电影名称等
系统处理验证输入内容完整性后插入数据表中
输出内容操作成功或者失败的提示
功能名称删除电影数据
功能概述管理员删除电影信息
输入内容电影名称、电影编号等
系统处理验证输入内容后在数据表中删除
输出内容操作成功或者失败的提示
19
湖南商务职业技术学院毕业设计
功能名称添加评论数据
功能概述管理员上传文件导入数据
输入内容csv数据文件
系统处理读取文件内容后进行预处理并删除数据表
输出内容操作成功或者失败的提示
功能名称删除评论数据
功能概述管理员删除评论
输入内容电影名称、评论编号等
系统处理验证输入内容后在数据表中删除
输出内容操作成功或者失败的提示
功能名称更改用户权限
功能概述管理员修改其他用户的账号权限
输入内容账户编号、用户权限
系统处理查询权限后在数据表中修改
输出内容操作成功或者失败的提示
3.3数据库设计
3.3.1设计原则
为取得较好的设计效果,在数据库设计时遵从以下原则:
1.标准化原则
为使数据库设计清晰直观且有利于后期数据库及程序维护,在数据库设计时
必须遵照同一的设计标准及命名规范,统一分类设计与规范编码能够为后续项目
的可扩展性提供前提条件
2.冗余原则
基本表与字段间的关系应尽量满足第三范式,但满足第三范式的数据库设计
往往来说并非最恰当的。为提高数据库的运行效率,常需降低范式标准:适当增
加冗余达到以空间换时间的目的,在数据冗余和处理速度之间找到合适的平衡点,
从而提高数据库运行速度。
3.3.2概念设计
在数据库概念设计过程中,通常使用E-R图以描述其结果。E-R图即实体-
联系图,用以描述实体的概念模型,提供了表示实体、属性及联系的方法。根据
20
湖南商务职业技术学院毕业设计
电影评分系统数据进行分析,其E-R图如下图所示。
图3-7电影评分系统E-R图
3.3.3逻辑设计
针对ER模型,通过分析并结合本系统的实际需求,由E-R图转化关系模式
的方式,建立起了本系统的关系模式,具体转化后的关系模式如下:
用户表(账户编号,账户密码,账户权限)
电影表(电影编号,电影名称,上映时间,导演,编剧,主演,类型,国家,
时长,简介)
电影评论表(评论编号,账户编号,电影编号,评论标题,评论正文,评分)
3.3.4数据字典
本设计的数据库film_info中包含了用户表user_info表、电影表
film_list表、电影评论表film_comment表。
user_info表的表结构如表3-6所示,该表用于记录用户信息,用于用户登
录、注册以及记录账户权限。
表3-6user_info表表结构
字段名称数据类型字段内容主键设置非空
idvarchar账户编号是是
passwordvarchar账户密码否是
authorityvarchar账户权限否是
film_list表的表结构如表3-7所示,该表用于记录电影的相关信息。
表3-7film_list表表结构
字段名称数据类型字段内容主键设置非空
21
湖南商务职业技术学院毕业设计
film_idint电影编号是是
namevarchar电影名称否否
yearvarchar上映时间否否
directorvarchar导演否否
screenwritervarchar编剧否否
starringvarchar主演否否
typevarchar类型否否
countryvarchar国家否否
minvarchar时长否否
synopsisvarchar简介否否
film_comment表的表结构如表3-8所示,该表主要用于记录用户评论信息。
表3-8film_comment表表结构
字段名称数据类型字段内容主键设置非空
comment_idvarchar评论编号是是
film_idint电影编号否否
user_idvarchar账户编号否否
titlevarchar评论标题否否
textvarchar评论正文否否
user_scoreint评分否否
4系统详细设计
本系统包括用户登录、用户注册、电影数据展示、电影榜单、电影查询、个
人中心、数据管理七个模块,其中电影数据展示模块同时在部分模块皆有使用,
因此单独列出介绍。此外,系统所有的模块都使用到了数据获取模块db、可视
化绘图模块DrawImg,其作用分别为从MySQL数据库中获取数据、根据已有数据
绘图,无具体界面,因此不做赘述。
4.1用户登录模块设计
4.1.1用户登录注册模块说明
本模块用于用户进行登陆、注册操作并进入主程序页,同时也设有跳转注册
程序的按钮。本系统中共设有“Normal”、“Root”两种权限,分别对应普通用
户与管理员用户。所有用户共用同一登录页,系统会根据不同的权限显示所能使
用的功能。新用户注册默认为“Normal”权限,注册成功则直接进入普通用户的
主程序页。
22
湖南商务职业技术学院毕业设计
4.1.2用户登录注册功能模块详细设计
图4-1用户登录注册模块的类图
针对本模块的类图(图4-1)进行分析,得到该模块的类及方法描述表(表
4-1)。
表4-1用户登录注册模块相关类及方法描述表
类名LoginPage
本模块调用了tk模块的方法、数据获取模块db,以及用
描述户注册模块(跳转注册窗口),用于实现登录窗口的创建
及登陆操作。
page:创建的框架Frame,用于控件布局。
属性id、password:分别为通过输入控件Entry获取的账户编
号、密码。
__init__():初始化,并创建注册窗口、构建窗口布局。
login():用于登陆操作,与数据库中的用户信息进行比对
方法并返回提示信息。
go_signin():调用了用户注册模块SigninPage,用于跳
转注册窗口。
类名SiginPage
本模块主要调用了tk模块、数据获取模块db,从登录界
描述
面跳转,用于实现注册窗口的创建及注册操作。
page:创建的框架Frame,用于控件布局。
属性id、password、password_confirm:通过输入控件Entry
获取的账户编号、密码、二次确认密码。
__init__():初始化,并创建注册窗口、构建窗口布局。
signin():用于注册操作,与数据库中的用户信息进行验
方法证并返回提示信息。
return_login():调用了用户注册模块LoginPage,用于
跳转注册窗口。
23
湖南商务职业技术学院毕业设计
4.2电影数据展示模块设计
4.2.1电影数据展示模块说明
本模块其实为4个相互关联的方法,用于调取数据库中目标影片的信息、评
论,及对部分数据进行处理并绘图,而后进行展示。在电影榜单、电影查询模块
中都有使用。其主要形式是由tk模块的Toplevel()方法创建的若干个子窗口,
并在此上进行布局从而展示数据。
4.2.2电影数据展示模块详细设计
图4-2电影数据展示模块的类图
针对本模块的类图(图4-2)进行分析,得到该模块的类及方法描述表(表
4-2)。
表4-2电影数据展示模块相关方法描述表
类名FilmData
主要调用了tk模块、数据获取模块db、绘图模块
描述
DrawImg,用于对数据进行展示。
属性cdatas:字典,通过模块db从数据库中获取的评论数据。
get_film_data():创建子窗口,构建布局,获取目标电影
的全部数据及绘图结果并进行展示,同时对得到的评论数
方法
据循环创建跳转按钮以便于接下来查看评论。
data():返回获取的cdatas。
类名CommentData
描述主要调用了tk模块,展示评论。
24
湖南商务职业技术学院毕业设计
show_comment():通过FilmData.get_film_data()中某一
方法
评论对应的“查看”按钮跳转的子窗口,显示评论内容。
类名ShowAdd
描述主要调用了tk模块,创建用户操作窗口。
uid:通过下拉菜单控件Combobox从本地缓存的账户信息
中读取的账户ID。
属性uscore:通过下拉菜单控件Combobox读取的用户评分。
utitle:通用输入控件Entry获取的评论标题。
text:通过文本框控件Text获取的评论正文。
add_comment():通过get_film_data中“写评论”按钮跳
方法
转的子窗口,用于编辑评论内容。
类名AddComment
描述主要调用了数据获取模块db,进行数据库操作。
add():被ShowAdd.add_comment()中的“提交评论”按钮
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年心理学专业知识提升认知心理学理论与实践题库
- 2026年网络安全与信息技术安全试题库
- 2026年网络信息检索与安全控制测试题
- 2026年世界五百强企业招聘预测模拟卷
- 北京市丰台区2026届生物高一下期末经典试题含解析
- 2026年环境科学高级职称题库环境监测与治理技术篇
- 2026年数据库管理员考试大纲及模拟试题
- 2026年社会心理学研究心理学基础知识认证题集
- 2026年财务会计基础与报表分析题库
- 2026年公共管理与政策分析模拟试题库
- 普外科科主任年终述职
- 中医内科学:肺胀
- 分级护理标准解读
- 2025年全国统一高考语文试卷(全国一卷)含答案
- 肯德基副经理养成课程
- 职业生涯规划教师评价标准
- XX问题技术归零报告
- AEO贸易安全培训
- 2024年中国靛蓝染料市场调查研究报告
- GB/T 4706.85-2024家用和类似用途电器的安全第85部分:光辐射皮肤器具的特殊要求
- 智慧人社大数据综合分析平台整体解决方案智慧社保大数据综合分析平台整体解决方案
评论
0/150
提交评论