摘 要
在Internet飞速发展的今天,互联网已经成为人们快速获取、发布和传递信息的重要渠道。而随着计算机应用的发展和普及,BBS论坛已经得到了极大的发展。
本论文系统地描绘了整个网上论坛的设计与实现,主要实现的功能有以下几点:首页、轮播图、公告栏、资源管理(新闻资讯、新闻资讯分类)交流管理(交流论坛、交流论坛分类)系统用户(管理员、系统用户)系统管理等功能,其具有简单的接口,方便的应用,强大的互动,完全基于互联网的特点。
本系统采用的数据库是Mysql,使用node.js的koa技术技术构建的一个管理系统,实现了本系统的全部功能。本次报告,首先分析了研究的背景、作用、意义,为研究工作的合理性打下了基础。针对网上论坛的各项需求以及技术问题进行分析,证明了系统的必要性和技术可行性,然后对设计系统需要使用的技术软件以及设计思想做了基本的介绍,最后来实现网上论坛和部署运行使用它。
在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。
关键词:互联网模式;node.js的koa;数据库;网上论坛
Abstract
With the rapid development of the Internet today, the Internet has become an important channel for people to quickly obtain, release and transmit information. With the development and popularization of computer applications, BBS forums have been greatly developed.
This paper systematically describes the design and implementation of the entire online forum. The main functions are as follows: home page, carousel map, bulletin board, resource management (news information, news information classification), communication management (communication forum, communication forum classification), system user (administrator, system user), system management, etc. It has simple interfaces, convenient applications, strong interaction, It is completely based on the characteristics of the Internet.
The database used in this system is MySQL, using node Js koa technology to build a management system to achieve all the functions of the system. This report first analyzes the background, role and significance of the research, laying a foundation for the rationality of the research work. This paper analyzes the requirements and technical problems of the online forum, proves the necessity and technical feasibility of the system, and then introduces the technical software and design ideas that the system needs to use. Finally, it implements the online forum and deploys and runs it.
In the design process, it fully guarantees the good readability, practicability, extensibility, universality, convenience for later maintenance, convenient operation and simple page of the system code.
Key words: Internet mode; Koa of node.js; database Online forum
目 录
第1章 绪 论
1.1课题背景
2022年处于信息科技高速发展的大背景之下。在今天,缺少手机和电脑几乎已经成为不可能的事情,人们生活中已经难以离开手机和电脑。针对增加的成本管理和操作,非常必要建立自己的网上论坛,这既可以让更多的人体验到网络所带来的方便,也有助于提高网上论坛本身的流行和用户依赖的感觉。
在经过几十年的高速发展后,互联网已成为最流行、最普及的媒体,每天的信息流量甚至能比得上过去十年。其以便捷的信息交换、快速的沟通速度,悄然地改变着人们的消费方式。简单、快捷、成本较低是互联网的特点,在互联网中,买家卖家不需要谋面也可以进行各种各样的交易活动,互联网商业化已经是当代经济的新趋势。 “电子商务”(电子商务或电子商务)的概念是在1996年前后在美国学术界提出的。经过数十年的经营,这个概念已经被广泛接受。B2B、C2C、C2B和B2C是电子商务的四种类型,但目前占据主流的是B2B和B2C两种。其中面向企业的管理模式称为B2B,它对商务系统的性能、安全和服务质量都要求十分严格;而直接面向消费者的模式称为B2C,也是我们所普遍接触的。到目前为止,电子商务的发展经历十余年仍然活力十足,电商应用就像雨后春笋一样冒出。
我国已经成为世界第二大经济体,经济实力高速发展以及百姓生活水平的普遍提高,不断地要求企业提供更加多元化的娱乐方式,更加快速和方便的服务,因此对校园也提出了更加严格的要求,如管理更加妥当、服务更加舒适等。而现在我们所能看到的数量也越来越多,信息量巨大,校园快速发展使得管理成本不断扩大。然而,传统的交流方式有许多缺点:实际时间差异、超负荷、高成本和信息0共享。而网上论坛正是当下各大教育交流网站为了适应时代发展所推出的互联网服务,以其方便高效的服务。
本文所设计的网上论坛就是在这种客观条件下进行的,是一项利民利国的、非常有价值的工作。在教育管理方面,传统的管理方式显然无法与网上论坛相比,网上论坛正发挥着越来越重要的作用。网上论坛的速度快、信息量大、安全、简单都是传统模式难以企及的优点,正在发挥着越来越重要的作用。在本文中的网上论坛是一个基于MySQL数据库和node.js的koa语言的。
1.2 研究现状
与其他国家相比,我国的软件产业相对落后,在信息化建设方面起步也比较晚,但是随着我国经济的不断发展,以及网络技术的不断提高,我国也在不断的进行软件行业的摸索,也得到了一些成果,我国的软件产业得到了快速的发展,越来越多的软件系统出现在人们的视线中,也逐渐改变着人们生活工作的方式。但是,对于信息化的建设,与很多发达国家相比,由于信息化程度的落后以及经费的不足,我国的网上论坛开发方面还是相对落后的,因此,要不断的努力探索,争取开发出一个实用的信息化的网上论坛,来实现商品管理的信息化。因此本课题以商品为例,目的是开发一个实用的网上论坛。
网上论坛的开发运用node.js的koa技术,以及MYSQL、的支持下共同完成了该网站系统的开发,实现了商品管理的信息化,用户可以有一个非常好的体验,管理员也可以通过该系统进行更加方便的管理操作,实现了之前指定好的计划。
1.3 研究内容
通过对管理员和用户的需求分析,我们将该网上论坛的功能逐步进行了添加,然后进行功能分析和检测,而且针对这两方面进行了深入研究探讨,该网上论坛主要对开发背景、市场需求、数据库分析、功能模块以及开发技术进行了着重介绍和分析。最后对系统中的功能信息进行测试和分析。本次毕业实现的网上论坛,不管是可行性分析、系统整体框架设计还是编码,都需要严格遵守软件开发的三个周期八个阶段,在该系统的开发过程中,要保证系统具有良好的时效性、易安装性以及稳定性。在代码编写时一定要按照要求进行,让代码编写看起来更美观,开发出一个便于用户的使用的网上论坛是本次开发的主要目标。在系统完成之后,利用电脑来将系统进行安置,并且用户可以通过电脑随时查看商品信息管理。此次在网上论坛的开发中,对系统要进行可行性分析、系统需求分析等基本分析,并且完成系统的部署和测试,在这些功能都实现之后,通过电脑进行操作系统。系统规划分析中,需要按照以下所示的技术路线。
第二章 关键技术的研究
2.1 koa框架
Node.js是一个异步的世界,官方API支持的都是callback形式的异步编程模型,这会带来许多问题,例如:1、callback嵌套问题;2、异步函数中可能同步调用callback返回数据,带来不一致性。为了解决以上问题Koa出现了。
koa是由Express原班人马打造的,致力于成为一个更小、更富有表现力、更健壮的Web框架。使用koa编写web应用,可以免除重复繁琐的回调函数嵌套,并极大地提升错误处理的效率。koa不在内核方法中绑定任何中间件,它仅仅提供了一个轻量优雅的函数库,使得编写Web应用变得得心应手。开发思路和express差不多,最大的特点就是可以避免异步嵌套。
阿里内部就在使用Koa框架,并在Koa基础上面做了一些扩展和封装。并且基于koa开发了一个开源框架egg。
2.2 HTML 特点:
超文本标记语言文档制作不是很复杂,但功能强大,支持不同数据格式的文件镶入,这也是万维网(WWW)盛行的原因之一,其主要特点如下:
1.4.1简易性:超文本标记语言版本升级采用超集方式,从而更加灵活方便。
1.4.2可扩展性:超文本标记语言的广泛应用带来了加强功能,增加标识符等要求,超文本标记语言采取子类元素的方式,为系统扩展带来保证。
1.4.3平台无关性:虽然个人计算机大行其道,但使用MAC等其他机器的大有人在,超文本标记语言可以使用在广泛的平台上,这也是万维网(WWW)盛行的另一个原因。
1.4.4通用性:另外,HTML是网络的通用语言,一种简单、通用的全置标记语言。它允许网页制作人建立文本与图片相结合的复杂页面,这些页面可以被网上任何其他人浏览到,无论使用的是什么类型的电脑或浏览器。
2.3 MVVM模式介绍:
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频、视频、3D、动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。
2.4 B/S体系工作原理:
B/S架构采取浏览器请求,服务器响应的工作模式。
用户可以通过浏览器去访问Internet上由Web服务器产生的文本、数据、图片、动画、视频点播和声音等信息;
而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中;
从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。
在 B/S 模式中,用户是通过浏览器针对许多分布于网络上的服务器进行请求访问的,浏览器的请求通过服务器进行处理,并将处理结果以及相应的信息返回给浏览器,其他的数据加工、请求全部都是由Web Server完成的。通过该框架结构以及植入于操作系统内部的浏览器,该结构已经成为了当今软件应用的主流结构模式。
2.5 MySQL数据库
Mysql的语言是非结构化的,用户可以在数据上进行工作。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。并且因为Mysql的语言和结构比较简单,但是功能和存储信息量很强大,所以得到了普遍的应用。
Mysql数据库在编程过程中的作用是很广泛的,为用户进行数据查询带来了方便。Mysql数据库的应用因其灵活性强,功能强大,所以在实现某功能时只需要一小段代码,而不像其他程序需要编写大段代码。总体来说,Mysql数据库的语言相对要简洁很多。
数据流程分析主要就是数据存储的储藏室,它是在计算机上进行的,而不是现实中的储藏室。数据的存放是按固定格式,而不是无序的,其定义就是:长期有固定格式,可以共享的存储在计算机存储器上。数据库管理主要是数据存储、修改和增加以及数据表的建立。为了保证系统数据的正常运行,一些有能力的处理者可以进行管理而不需要专业的人来处理。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了Mysql进行对数据的管理。
第3章 系统分析
3.1 可行性分析
可行性分析的目的是确定一个系统是否有必要开发、确定系统是否能以最小的代价实现。其工作主要有三个方面,分别是技术、经济和社会三方面的可行性。我会从这三个方面对网上论坛进行详细的分析。
3.1.1技术可行性
该系统主要使用JAVA、MyEclipse和MySQL数据库进行开发,Java易于学习和使用灵活。在校期间也接触过MyEclipes和MySQL数据库的课程,对此有一定的开发经验,因此开发难度不高,所以从技术上来说是可行的。
3.1.2经济可行性
本系统设计所选择的开发工具和服务器都是免费的开源软件,又或者是适合人民使用的免费版本,并不需要支付费用,而且由作者本人单独完成,也不存在团队费用,几乎没有经济成本,具备经济可行性。
3.1.3社会可行性
社会可行性主要包括法律和用户两个方面,下面将从这两方面进行分析。
(1)法律因素
本系统是学习开发所制作的程序,并不用作商业用途,是在根据实际调研的结果结合现有的网上论坛后得出的,而且系统制作的全部过程都是在个人的工作电脑中完成的,使用的都是开源和免费的开发环境、分析软件和数据库,不存在侵权问题。
(2)用户可行性
操作人员或者客户只需要具备一定的windows电脑操作常识,不需要精通计算机技能。此外系统管理人员,只需要在windows常识之上再熟悉下使用Tomcat服务器的操作流程,只要掌握一定的计算机知识即可,在正式上线运营之前,仅需要对操作人员进行简单的熟悉流程培训即可。所以从用户可行性上也是可行的。
3.2总体设计原则
一个系统要在开发和维护的过程中方便使用,必须采取一定的设计原则,其主要设计原则有:
简单性:系统功能简单易懂,只需要掌握基本的计算机操作能力即可使用。
针对性:针对特定的用户,没有多余的其他功能,使用户可以专心使用。
实用性:能够满足用户查看教育资讯等方面的需求。
一致性:设计风格、命名规范一致,整个系统的各个功能模块色彩、摆放位置、功能等都是一致的。
先进性:本系统的代码采用读取数据的方式,方便后续开发、拓展。
3.3 系统需求分析
网上论坛网站需要满足的需求有以下几个:
1.信息获取方便,用户可在网页上快速浏览到新的信息
2.查看教育资讯详情,单独查看某一个教育资讯的详细信息。
3.注册登录,网站需要吸引用户,即通过注册来提高用户的存留率。
4.历史记录,用户可以查看自己留言信息及其他操作。
5.修改用户信息,可以修改用户密码或者用户名等一些个性化操作。
6.管理员功能,管理员可以对用户进行管理。
7.系统安全,操作简便,不过于复杂。
8.系统可以稳定运行,不存在卡顿等问题造成用户反感。
3.4 业务流程分析
3.4.1登录流程
登录模块主要满足管理员以及用户的权限登录,用户登录流程图如图2-1所示。
图3-1 登录流程图
3.4.2注册流程
未有账号的用户可进入注册界面进行注册操作,用户注册流程图如图2-2所示。
图3-2 注册流程图
3.4.3添加信息流程
用户在添加信息时,信息编号自动生成,系统会对添加的信息进行验证,验证通过则添加至数据库,添加信息成功,反之添加失败。添加信息流程如图2-3所示。
图3-3 添加信息流程图
3.4.4删除信息流程
用户可选择要删除的信息进行信息删除操作,在删除信息时系统提示是否确定删除信息,是则删除信息成功,系统数据库将信息进行删除。删除信息流程图如图2-4所示。
图3-4删除信息流程图
第4章 系统设计
4.1 系统概要设计
本网上论坛选择B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式。适合在互联网上进行操作,只要用户能连网,任何时间、任何地点都可以进行系统的操作使用。系统工作原理图如图3-1所示:
图4-1 系统工作原理图
4.2系统结构设计
整个系统是由多个功能模块组合而成的,要将所有的功能模块都一一列举出来,然后进行逐个的功能设计,使得每一个模块都有相对应的功能设计,然后进行系统整体的设计。
本网上论坛结构图如图4-2所示。
图4-2 网上论坛网站结构图
4.3 数据库设计
4.3.1 数据库E-R图
概念设计主要是通过数据库的概念结构和模式进行建立数据库嗯逻辑结构,然后利用数据库的DBMS进行完成,它不需要计算机系统的支持。通过系统的整体来看,主要是对数据库进行管理、整理、更新等操作。数据库的功能是非常强大的,每个系统的开发肯定离不开数据库,通过数据库可以看得出整个系统的质量和效率,根据以上的系统分析,对系统中的主要实体进行规划。以下是几个关键实体的实体关系图:
(1) 用户信息实体E-R图如图4-3所示:
图4-3用户信息实体属性图
(2) 新闻资讯实体E-R图如图4-4所示:
图4-4新闻资讯管理实体图
(1) 管理员登录信息实体属性图如下图4-5所示
图4-5管理员登录信息实体属性图
4.3.2数据库表设计
将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。
collect | |||||
字段名称 | 类型 | 长度 | 不是null | 主键 | 字段说明 |
collect_id | int | 10 | 是 | 主键 | 收藏ID |
user_id | int | 10 | 是 | 收藏人ID | |
source_table | varchar | 255 | 否 | 来源表 | |
source_field | varchar | 255 | 否 | 来源字段 | |
source_id | int | 10 | 是 | 来源ID | |
title | varchar | 255 | 否 | 标题 | |
img | varchar | 255 | 否 | 封面 | |
create_time | timestamp | 0 | 是 | 创建时间 | |
update_time | timestamp | 0 | 是 | 更新时间 | |
comment | |||||
字段名称 | 类型 | 长度 | 不是null | 主键 | 字段说明 |
comment_id | int | 11 | 是 | 主键 | 评论ID |
user_id | int | 11 | 是 | 评论人ID | |
reply_to_id | int | 11 | 是 | 回复评论ID | |
content | longtext | 0 | 否 | 内容 | |
nickname | varchar | 255 | 否 | 昵称 | |
avatar | varchar | 255 | 否 | 头像地址 | |
create_time | timestamp | 0 | 是 | 创建时间 | |
update_time | timestamp | 0 | 是 | 更新时间 | |
source_table | varchar | 255 | 否 | 来源表 | |
source_field | varchar | 255 | 否 | 来源字段 | |
source_id | int | 10 | 是 | 来源ID | |
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 | 是 | 上级分类ID | |
icon | varchar | 255 | 否 | 分类图标 | |
create_time | timestamp | 0 | 是 | 创建时间 | |
update_time | timestamp | 0 | 是 | 更新时间 | |
notice | |||||
字段名称 | 类型 | 长度 | 不是null | 主键 | 字段说明 |
notice_id | mediumint | 8 | 是 | 主键 | 公告id |
title | varchar | 125 | 是 | 标题 | |
content | longtext | 0 | 否 | 正文 | |
create_time | timestamp | 0 | 是 | 创建时间 | |
update_time | timestamp | 0 | 是 | 更新时间 | |
ordinary_users | |||||
字段名称 | 类型 | 长度 | 不是null | 主键 | 字段说明 |
ordinary_users_id | int | 11 | 是 | 主键 | 普通用户ID |
user_name | varchar | 64 | 否 | 用户姓名 | |
user_gender | varchar | 64 | 否 | 用户性别 | |
user_age | varchar | 64 | 否 | 用户年龄 | |
examine_state | varchar | 16 | 是 | 审核状态 | |
recommend | int | 11 | 是 | 智能推荐 | |
user_id | int | 11 | 是 | 用户ID | |
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 | 是 | 点赞状态 | |
slides | |||||
字段名称 | 类型 | 长度 | 不是null | 主键 | 字段说明 |
slides_id | int | 10 | 是 | 主键 | 轮播图ID |
title | varchar | 64 | 否 | 标题 | |
content | varchar | 255 | 否 | 内容 | |
url | varchar | 255 | 否 | 链接 | |
img | varchar | 255 | 否 | 轮播图 | |
hits | int | 10 | 是 | 点击量 | |
create_time | timestamp | 0 | 是 | 创建时间 | |
update_time | timestamp | 0 | 是 | 更新时间 | |
user | |||||
字段名称 | 类型 | 长度 | 不是null | 主键 | 字段说明 |
user_id | mediumint | 8 | 是 | 主键 | 用户ID |
state | smallint | 1 | 是 | 账户状态 | |
user_group | varchar | 32 | 否 | 所在用户组 | |
login_time | timestamp | 0 | 是 | 上次登录时间 | |
phone | varchar | 11 | 否 | 手机号码 | |
phone_state | smallint | 1 | 是 | 手机认证 | |
username | varchar | 16 | 是 | 用户名 | |
nickname | varchar | 16 | 否 | 昵称 | |
password | varchar | 64 | 是 | 密码 | |
| varchar | 64 | 否 | 邮箱 | |
email_state | smallint | 1 | 是 | 邮箱认证 | |
avatar | varchar | 255 | 否 | 头像地址 | |
create_time | timestamp | 0 | 是 | 创建时间 | |
user_group | |||||
字段名称 | 类型 | 长度 | 不是null | 主键 | 字段说明 |
group_id | mediumint | 8 | 是 | 主键 | 用户组ID |
display | smallint | 4 | 是 | 显示顺序 | |
name | varchar | 16 | 是 | 名称 | |
description | varchar | 255 | 否 | 描述 | |
source_table | varchar | 255 | 否 | 来源表 | |
source_field | varchar | 255 | 否 | 来源字段 | |
source_id | int | 10 | 是 | 来源ID | |
register | smallint | 1 | 否 | 注册位置 | |
create_time | timestamp | 0 | 是 | 创建时间 | |
update_time | timestamp | 0 | 是 | 更新时间 |
第 5章 系统实现
5.1系统功能模块
网上论坛,在系统首页可以查看首页、交流论坛、公告消息、新闻资讯、后台管理等内容,如图5-1所示。
图5-1系统功能界面图
注册,在注册页面通过填写用户名、密码、姓名、性别、出生年月、QQ、邮箱、手机、身份证、头像、地址、备注等信息完成注册,如图5-2所示。
图5-2注册界面图
交流论坛,在交流论坛页面可以查看标题、日期、用户、点赞数、浏览数等详细内容,如图5-3所示。
图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-9所示。
图5-9公告栏界面图
新闻资讯管理,在新闻资讯管理页面可添加新闻信息:标题、类别、内容、首页图片、等信息,并可根据需要在变幻图查询页面进行修改或删除等操作,如图5-10所示。
图5-10新闻资讯管理界面图
第 6章 软件测试
测试存在于软件开发进程中的最后一个阶段,它可以保证一个软件的开发质量是否符合设计者的初衷,也为程序的正式上线做了最后一道质量检测的工序。软件测试主要是控制各种条件、包括软件输出方式,使用模式和运行环境等,来评估一个系统或应用是否符合设计标准。在软件测试过程中,我们一般刻意的去制造错误和极端条件,不能仅依照正常模式允许,而是多去尝试那些意外的情况。
6.1软件测试的重要性
只有在运行和维护阶段之前经历大量的测试的软件,才能说明它的质量是经得起检验的。最近计算机业界也都一致认为,测试应该存在于软件设计的每个阶段,因为越早发现错误,修复起来就越容易。
实际上,对于一个软件应用,错误是必然存在的,无论使用何种技术或手段,都不可能绝对的排除软件漏洞。测试是随着软件开发一同诞生的,两者是共同发展进步的。实际上,测试可以大幅度的降低维护的成本,如果一个漏洞在开发的早期就被发现,那么修复它的成本远比上线后再修复的成本要低得多。
6.2测试实例的研究与选择
测试有白盒测试和黑盒测试两种方式。
其中,白盒测试是将软件看成一个透明的白盒子,按照程序的内部控制结构和处理技术逻辑来选定测试用例、软件系统测试的逻辑路径及过程需要进行管理测试,又称玻璃盒测试。因此白盒测试需要选择足够多的测试用例,覆盖尽可能多的代码来发现程序中的错误。
黑盒测试,也称为功能测试。它将需软件看作一个黑盒,像一个普通用户一样来模拟软件的使用流程。黑盒测试通过大量的输入边界值或错误数据,来检查是否可产生正确的输出。
本系统测试 主要选择黑盒测试,少量采用白盒测试。通过测试达到以下测试目的:
1.检查各大功能模块的运行,确保其能够正确运行,并检查各页面的完整性,保证页面完整。
2.检查各个接口是否可以正确地输入和输出,保证数据流通稳定可行。
3.检查数据结构,保证其和外部接口没有访问错误,访问顺利。
4.检查原计划的性能需求有没有完成,运行流畅。
本系统的测试用例(部分):
登录部分测试用例 | |||||
编号 | 对象 | 项目 | 操作 | 预期结果 | 结果 |
1 | 登录 | 登录提示 | 使用正确的账号密码登录 | 成功登录 | 预期结果 |
2 | 登录提示 | 使用正确的账号但错误的密码登录 | 提示密码错误 | 预期结果 | |
3 | 登录提示 | 使用错误的账号登录 | 提示不存在账户 | 预期结果 | |
4 | 登录提示 | 不输入账号,点击登录 | 提示输入账号 | 预期结果 | |
5 | 登录提示 | 输入账号但不输入密码点击登录 | 提示输入密码 | 预期结果 | |
6 | 登录入口 | 已登录账号,查看登录入口 | 不显示登录入口 | 预期结果 |
6.3测试环境与测试条件
处理器:Inter Core I7-4710MQ四核处理器
内存:4GB
硬盘:1T
操作系统:Windows 10
数据库:MySQL
6.4系统运行情况
全部测试用例都已通过(包括但不限于以上测试用例),且不存在漏洞,实现了论文开始时所作要求。本系统运行稳定,使用流畅,可以满足客户需求。
6.5系统评价
6.5.1系统功能评价
试运行后进行系统评估,可以认为该系统达到预定的目标要求,可以满足用户的需求,也满足了系统开发前所作目标。
6.5.2系统技术评价
系统在经过大量重复测试后运行十分稳定,安全实用,功能模块已经达到预定目标所需。
6.5.3系统经济评价
在规定的时间内实现系统的大部分功能,且满足要求,节省开发成本,有助于提高科学管理水平,符合本人经济情况。
第7章 总结
在本次毕业设计的过程中,从开始的懵懂无知,感觉设计一个系统非常困难,不知道该从何做起,但是通过查阅相关资料和网站之后,让我对该系统的开发有了新的认知,开发系统最重要的就是需求调查和系统分析,也通过老师指导和学过相关的知识,在加上我的不懈努力,最后将该系统逐步完成。在此次毕业设计中,让我知道了做什么事都必须要坚持,努力去查阅资料,并且善于发现和研究,充分利用身边资源,我相信办法总比困难多,所有问题都会迎刃而解。通过此次知识分享网站的开发设计,将我在大学期间所学的知识都应用到了其中。使理论知识和现实实践进行相结合,开发知识分享网站将理论知识和实践相结合,也将计算机信息与实践问题进行了相结合,通过现代计算机网络的便利来解决生活中的问题,并且还提高了我的计算机编程能力,在这次的开发设计过程中,虽然我遇到了很多的问题和困难,但是通过老师和同学们的帮助下,所有的问题都迎刃而解了,让我顺利的完成了此次的毕业论文设计,通过此次毕业设计的开发与设计,大大的提高了我的动手动脑能力,并且为我以后的工作奠定了坚实的基础。
通过本次设计,让我学到了更多的知识,而且在设计中会有一些问题出现,最后通过查阅资料和在老师和同学的帮助下完成了系统的设计和开发,使得这次系统的开发非常的有意义。同时通过这次系统的设计也让我明白了自己在哪方面有不足,以后加以学习争取可以开发住更多有用的适用的系统软件。
参考文献
[1]季焕淑.基于HTML5技术的移动Web前端设计与开发[J].电脑编程技巧与维护,2022(10):74-76+169.DOI:10.16184/j.cnki.comprg.2022.10.053.
[2]孙玮.基于HTML5技术的移动Web前端设计探讨[J].信息与电脑(理论版),2022,34(17):102-104+109.
[3]Yunus Usman,Amin Javeria,Sharif Muhammad,Yasmin Mussarat,Kadry Seifedine,Krishnamoorthy Sujatha. Recognition of Knee Osteoarthritis (KOA) Using YOLOv2 and Classification Based on Convolutional Neural Network[J]. Life,2022,12(8).
[4]Akau George,Detlefsen Guillermo,Imbach Alejandro,Jenkins Torey,Villanueva Cristóbal. Agronomic qualities of Pennisetum clandestinum in association with Acacia koa for the mitigation of the effects of ranching and promotion of conservation in a silvopastoral context on the island of Maui, Hawaii[J]. Agroecology and Sustainable Food Systems,2022,46(7).
[5]汪静.HTML5技术课程的双案例驱动教学模式分析[J].电子技术,2022,51(07):306-307.
[6]向桂玲.基于HTML5技术的跨平台门户网站设计与实现[J].信息与电脑(理论版),2022,34(07):228-230.
[7]秦源.基于HTML5技术的移动Web前端设计与开发[J].电子元器件与信息技术,2022,6(02):193-195.DOI:10.19772/j.cnki.2096-4455.2022.2.074.
[8]朱广跃.HTML5技术在移动Web前端设计中的研究[J].电子技术与软件工程,2022(02):51-54.
[9]韩多成.基于HTML5的移动学习平台设计与实现[J].长江信息通信,2021,34(11):228-230.
[10]韩迎红.基于HTML5技术的移动Web前端设计与开发[J].电子技术与软件工程,2021(22):55-57.
[11]费孝宏,王琪.高校论坛管理系统的设计与开发[J].电脑知识与技术,2021,17(31):76-78+91.DOI:10.14004/j.cnki.ckt.2021.3110.
[12]杨世文,侯超钧.基于SSM框架的学术论坛管理系统设计与实现[J].计算机时代,2021(02):25-28+33.DOI:10.16644/j.cnki.cn33-1094/tp.2021.02.007.
[13]张钊源,刘晓瑜,鞠玉霞.Node.js后端技术初探[J].中小企业管理与科技(上旬刊),2020(08):193-194.
[14]王仡捷.基于Node.JS技术的高并发网络应用架构的设计与实现[J].通化师范学院学报,2020,41(04):64-67.DOI:10.13877/j.cnki.cn22-1284.2020.04.014.
[15]林力文.探究Node.js技术特性在电信IT支撑领域的应用[J].计算机产品与流通,2019(12):32-33.
[16]何芳. 基于HTML5和Node.js技术的农产品销售平台设计[D].中南林业科技大学,2019.DOI:10.27662/d.cnki.gznlc.2019.000054.
[17]刘海蓉,王仕勋.基于B/S模式的论坛管理系统设计与开发[J].长沙民政职业技术学院学报,2019,26(03):116-119.
[18]姚佳花,彭楚瑶.基于Node.js的教育技术学资源网站的设计与开发[J].无线互联科技,2019,16(09):74-77+83.
[19]杨明戊,戴经国,陈正铭.基于Node.js+koa2的全景图上传与展示技术研究[J].电脑编程技巧与维护,2018(10):149-152.DOI:10.16184/j.cnki.comprg.2018.10.054.
[20]徐枫.浅析论坛管理系统的数据库设计[J].电子世界,2016(18):91.DOI:10.19353/j.cnki.dzsj.2016.18.066.
致谢
大学生活在这个时候即将划上一个句号,但是对于我的人生道路来说,这仅仅是一个逗号,我将面对的是又一次征程的开始。
回忆过去,许许多多的事情浮现在脑海:刚上大学时欢乐心情和兴奋的场景还历历在目。一切都是那么新鲜,那么富有吸引力。有快乐也有艰辛,有收获也有失落。衷心感谢信息学院所有支持帮助过我的老师,谢谢你们多年来的关心和爱护。同窗的友情同样难忘,你们与我共同走过了人生中不平凡的道路,给我留下了值得珍藏的美好记忆。
最后,我要特别感谢指导网上论坛论文设计的老师。本论文是在他的悉心指导和热情帮助下完成的,老师认真负责的工作态度,严谨的治学精神和精深的理论水平都使我受益匪浅。老师无论在理论上还是在实践中,都给予我很大的帮助,使我专业技能的应用水平得到很大提高,这对于我以后的工作和学习都有益处。值此论文完成之际,特别向老师表示衷心的感谢和崇高的敬意,谢谢他细心而又耐心地辅导,使得我得以顺利的完成毕业设计开发工作,同时也要感谢其他帮助过我的老师和同学,他们在我成长过程中给予了我很大的帮助,在此一并表示感谢。
由于本人水平有限,加上时间紧促,本文一定有不少缺点和不足,恳请各位老师给予帮助和指正。