中国知网查重 高校在线论文查重入口

立即检测
  • 58 元/篇
    系统说明: 知网职称论文检测AMLC/SMLC是杂志社专用系统,针对投稿论文、评审论文、学校、单位职称论文的学术不端重复率检测系统。
  • 298 元/篇
    系统说明: 知网本科论文检测PMLC是最权威的大学生毕业论文检测系统,含“大学生论文联合对比库”,国内95%以上高校使用。检测结果和学校一致!
  • 498 元/篇
    系统说明: 此系统不支持验证!可用作研究生初稿检测,相比知网VIP5.3缺少“学术论文联合对比库”,检测结果有5%左右的误差!(论文中若参考往届研究生论文,重复率误差会较大)
  • 128 元/篇
    系统说明: 大分解论文检测系统,对于想检测学术不端文献检测系统,而又价格便宜的同学可以选择,限每篇2.9万字符,结果与大学生PMLC、硕博VIP定稿系统有出入!
  • 68 元/篇
    系统说明: 知网论文小分解检测系统,适合中国知网初稿查重,数据库和定稿查重不同。结果与本科PMLC,研究生VIP5.3有出入,限每篇1.4万字符!
  • 3 元/千字
    系统说明: 学术家论文重复率检测系统,支持学位论文、毕业论文、投稿论文、职称评审论文,提供全文对照,word标红报告,性价比超高!
论文方法介绍-计算机程序设计(C)学习网站开发与设计
时间:2021-05-06 14:14:30

  选题背景

  信息技术是当今人类最伟大的科研成果之一,信息技术的发展使得其应用已广泛深入到社会生活的各领域,对教育的发展也带来了巨大影响。利用信息技术促进教育教学方式的变革、促进创新人才的培养,成了教育科学领域研究的重要课题。

  1.2开发工具与运行环境

  1.2.1 Microsoft Visual Studio简介

  Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。它是一个基本完整的开发工具集,包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。

  Visual Studio是最流行的Windows平台应用程序的集成开发环境。最新版本为Visual Studio 2019版本,基于.NET Framework 4.8。本次开发使用Visual Studio 2010。

  1.2.2 Microsoft SQL Server简介

  SQL Server是Microsoft公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98的膝上型电脑到运行Microsoft Windows 2012的大型多处理器等多种平台使用。

  Microsoft SQL Server是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理。Microsoft SQL Server数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。本次开发使用SQL Server 2015。

  1.3系统开发的方法

  1.3.1系统开发法简介

  比较常见的系统开发法有下列几类:

  (1)自主开发

  (2)委托开发

  (3)合作开发

  (4)咨询开发

  (5)购买商品化的软件。

  1.3.2结构化系统的开发法

  结构化系统的开发法在目前看来所有方法当中最成熟的和使用最为普遍的方法。结构化的系统开发法基本精神为:以用户至上为原则,以系统工程的想法以及工程化方法,模块化地、结构化地、从上向下分析和设计。具体一点,即为先把信息系统的开发过程分为几个相对来说不相干的阶段,比如说规划、分析、设计和实施等阶段。前面三阶段持续由上往下结构化划分系统,在进行系统调查的过程中或者是理顺管理业务的时候,要从最上层入手,先要知道组织目标和现在组织系统存在的问题以及信息战略,接着再知道怎样靠信息技术处理问题,慢慢深入到最底层;做系统分析的时候,要从上到下、一层一层剖析,从抽象至具象,一步步了解问题;系统设计的时候,首先斟酌系统整体优化,接着是局部优化;实施过程则是要保持从下到上,从局部到整体,在标准化模块链接作用下,构成一个完备的系统。

  1.3.3快速原型法

  原型法基本思路为:软件生产的过程中,引入工业生产时设计及生产阶段,试做样品的办法。这种方法不强制要求一次性做完分析设计,可以准许不完善的初步分析及设计存在,并再做修正。不过这种方法要求开发环境能够进行快速的反映。

  原型法工作过程:由用户提出要求,开发的人员进行识别以及归纳用,据此结果,做出原型(也就是程序模块),再跟用户一起对此进行评价。假如完全不行,就重做一次构造;假如不是非常满意,就在原型上修改,直至满意为止。

  快速原型法为建立在4GL基础上的快速模拟法,要把该方法使用到大型的信息系统开发中的全部环节是不现实的,所以该方法多数是用在小型的局部系统或者是处理的过程并不复杂的系统中设计以及实现环节。原型法的特点是能够在初期阶段,了解人们想法,减小用户以及分析人员间的距离也就是结构化法最难的一环。

  1.3.4面向对象的开发法

  面向对象开发的前身是80年代面向对象的各种程序设计法(比如说C++等方法)。面向对象法(可以简单称作00法)是一类认识方法论,该方法着重突出了理解以及模拟现实世界,在面向对象的角度,提供给我们全新的一种认识事物、开发系统的方法。

  根据以上思想,我们能够把面对对象的方法进行开发的工作分成四阶段:(1)调查及需求的分析;(2)面向对象的分析(缩写为OOA);(3)整理问题,然后归类,再整理,最后把他们用范式的形式将定下来。;(4)程序实现,就是把上面一步整理出来的范式,以面对对象的程序设计的语言,直接对应成应用程序的软件。

  1.4系统的关键技术

  1.4.1 Visual C#2010的相关介绍

  C#为Visual Studio 2010核心开发语言中的一种,它是一种面向对象的编程语言,是一种运行在.NET Framework上的高级设计语言。在保留之前C和C++功能前提下,删除了某些复杂的特性(比如:没有宏和模版,不能几重继承等)。C#比C,C++或别的类似开发软件拥有更加广的数据类型,而且可以跟COM进行无缝的集成。Visual C#2010较易操作、也拥有比以前更加突出的优势,而且是面向对象的。它靠着许多的特性以及创新,不仅保留了C样式语言的形式及其优美,还使得应用程序得到了迅速开发。它有以下一些特点:

  (1)可视化的编程环境

  可视化的环境让开发员人机界面在开发上产生了很明显的变化,为用户提供了许多元素(也可称为控件对象),例如检查框、窗体、菜单、命令按钮和工具按钮等。开发员只要拿鼠标或者是其他的输入设备,做出相关的操作即能设计出想要的界面,而不用进行代码的编写然后又编译生成,给开发人员提供了很多方便和快捷。

  (2)提升效率和安全性

  高效性在这个网络快速发展的社会上具有很重大的作用,为了应对激烈竞争和市场威胁,程序开发者们不间断地缩短开发的周期,开发出合适的应有程序的新版。在设计时,C#充分地遵守了讲究效率的原则,它出现的其中一个目标就是可以使开发者以更少代码做更多事。C#设计人员能在Microsoft.NET的平台上构建程序扩展框架,起到事半功倍的效果,并且极大地降低出错率。

  (3)消除众多程序错误

  相比C++,程序员不记得初始化的变量比较常见,但此类错误却常常会造成很难估量的难题,严重时要用很长时间进行查询以及解决。但在C#当中,现代化设计可以解决以前经常发生的问题,与C++相比,变量从环境开始自动进行初始化,而且变量是安全类型的。

  另外,大学生的综合测评系统设计,还要随时反映学生素质的信息,把一定数据从数据源进行动态取回,再通过统计图,例如曲线图、饼状图和柱状图等表示,方便测评学生,也方便做高校学生的管理工作的人员查看与分析。在Microsoft.NET Framework产生前,我们主要由编写组件达成这一目标。现在使用Microsoft开发的众多GD工+类及对象能轻易完成这一任务。

  1.4.2 SQL语言的介绍与特点

  SQL语言允许用户在高层数据结构上工作,属于高级的非过程化编程语言。用户可以不指定数据的存放方法,不了解数据存放的具体方式。因而数据系统有完全不同的底层结构。我们能够把SQL语言作为数据输入与管理的接口。SQL语言的主要特点有:

  (1)在操作时采用SQL语言,我们仅需提出“做什么(Do what)",不必要指明“怎么做(How to do)"。系统会自动完成选择存取路径和操作SQL语句过程的工作,因而,用户可以不了解存取路径。用户的负担得到实质性的减少,数据的独立性亦得以提高。

  (2)操作对象和查询结果体现为元组的集合外当采用集合操作的方式时,元组的集合包括每一次删除、插入、更新操作的对象。

  (3)SQL语言属于自含式语言,在此同时,也属于嵌入式语言。它是自含式语言因为能独立应用于联机交互的使用方式。要操作数据库,使用者只需在网络终端输入设备上直接键入SQL命令;它也是嵌入式语言,它能够嵌入到高级语言程序中。在设计程序时,程序员可以使用。由此可见,即使是两种不同的操作方式,SQL的语法结构从基本上看是一致的。一种语法结构提供了两种不同的操作方式,这种统一语法结构使用户在操作上更趋灵活和简便。

  第2章需求分析

  2.1可行性分析

  如今,世界进入了信息化时代,而C语言作为一门面向过程的计算机编程语言,在信息化时代中的地位尤为重要。同时,世界需要越来越多的计算机方面的人才,人们对于C语言的学习也越来越迫切。本网站旨在帮助想要学习C语言的人进行线上自学,现就计算机程序设计(C)学习网站从技术、经济、操作三方面进行可行性分析:

  1、技术可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要。本网站采用VS开发出友好美观的人机界面,便于用户理解、操作。数据库系统采用SQL Server2015,它快速、体积小,同时保持数据的完整性、安全性。因此本网站的开发平台已成熟可行。硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统所需。

  2、经济可行性:由于本网站的开发完全靠人力完成即可,所以开发成本为零。该网站在方便高效快捷的基础上,帮助

  3、操作可行性:本网站在开发设计时尽可能做到界面友好以及操作的人性化,使得操作人员轻松上手,尽量让更多的用户接受并使用,让用户都能简便的操作。

  4、结论:本网站开发目标明确,在技术和经济,操作三方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。

  2.2总体需求分析

  计算机程序设计(C)学习网站的管理设计用户管理、资料发布、试题发布、通知发布、用户登录、修改信息等多种数据管理。从管理的角度可将俱乐部中的数据分为三类:用户管理、资料/试题管理、通知管理等数据管理。用户管理包括管理员对普通用户信息的添加、修改、删除、查询以及普通用户对其个人信息的修改、删除、查询。资料/试题管理则是普通用户以及管理员对资料/试题的发布、修改、删除和查询。通知管理与资料/试题管理相差不多,都是对数据的修改并且数据类型也相差不多,只是类别不同而已。其中用户管理中有两个角色:

  1、管理员身份:通过后台管理登录进行管理员操作。拥有所有的权限,可对普通用户进行所有的操作,可以直接删除任何普通用户的账号或者修改任何普通用户的注册信息,也可不通过注册页面直接添加用户。

  2、普通用户身份:只能通过首页注册页面进行添加账号,也只能通过登录页面登录到网站内部进行信息的浏览,并通过首页进入到修改个人信息的页面编辑个人信息,不拥有对其他会员信息修改的权限。

  出于版权考虑,防止不相关的人员浏览网站内部信息,本网站只允许普通用户通过单独的登录页面登录后才能浏览网站相关页面。其中会员注册和登录的页面合并为一个页面,设计的更加简洁,也方便会员在注册时不用单独再创建一个窗口进行注册。

  2.3用户模块需求分析

  用户管理模块是针对本网站的使用者进行管理的模块。用户管理模块可以防止未授权用户非法使用本网站访问俱乐部数据。该模块一共包括注册、删除、修改、登录-注销四个子模块,分别完成添加用户、删除用户、用户登录后修改其资料、用户登录-注销等功能。用户登录后才能使用本网站。

  2.3.1注册用户

  (1)加工说明:

  用户注册后才能进入网站,注册用户模块用于添加俱乐部成员。俱乐部成员进入注册新用户页面,输入用户信息后提交,验证通过后网站的用户数据中将添加新注册用户的数据。

  验证用户信息检查用户信息的完整性和正确性,以阻止非法用户访问系统。

  (2)数据流说明:

  用户信息包括用户名、用户密码、姓名、性别、年龄、职业、工作单位等。

  2.3.2删除用户

  加工说明:

  删除用户只能由俱乐部管理员完成,其他用户不能执行该操作。俱乐部管理员输入用户名后,系统验证相应的用户是否存在以及是否可以删除,验证通过后执行删除用户操作,系统的用户数据中将不再存在该用户的数据。

  验证用户名操作从系统的用户数据中查找用户名,找到后判断相应的用户是否可以删除。删除用户模块根据用户名删除系统的用户数据中相应的用户信息。

  2.3.3修改用户资料

  (1)加工说明:

  用户可以根据需要修改其注册时填写的部分资料。用户输入新的个人信息并提交,系统验证新的信息的完整性和正确性,验证通过后修改信息模块修改用户数据中相应的用户信息。

  (2)数据流说明:

  新的用户信息包括用户密码、姓名、性别、年龄、职业、工作单位等,其他用户信息不允许修改。

  2.3.4用户登录-退出

  (1)用户登录加工说明:

  用户输入登录信息并提交,系统验证有效后创建一个用户会话,之后用户就可以使用羽毛球俱乐部网站了。

  (2)用户注销加工说明:

  用户注销模块仅完成一个操作,即删除用户会话。

  (3)数据流说明:

  用户登录信息包括用户名、用户密码等数据。

  用户会话包含了用户名等数据。

  2.4功能需求分析

  采用面向对象的分析方法对羽毛球俱乐部网站功能需求进行划分,可以将需求划分为管理员对功能需求和用户对功能的需求两大部分内容,具体功能模块如图

  2.4.1管理员对功能的需求

  网站开发的总任务是实现俱乐部内部各种信息的系统化、规范化和自动化。羽毛球俱乐部网站需要完成的功能主要有:

  会员基本信息的输入,包括会员的用户名、用户密码、姓名、性别、年龄、职业、工作单位等。

  会员基本信息的查询、修改。

  新闻信息的输入,包括新闻的标题、新闻的具体内容等。

  新闻信息的查询、修改。

  赛事通知信息的输入,包括赛事通知的标题、赛事通知的内容等。

  赛事通知信息的查询、修改。

  2.4.2会员对功能的需求

  会员基本信息的输入,包括会员的用户名、用户密码、姓名、性别、年龄、职业、工作单位等。但只限于单个注册账号。

  会员个人基本信息的查询、修改。

  新闻信息浏览,包括浏览管理员所发布的相关新闻,了解最近俱乐部内部所举办的活动结果等。

  赛事信息浏览,包括浏览管理员所发布的赛事通知,以获取最新活动讯息。

  羽毛球装备、羽毛球知识浏览,包括羽毛球相关品牌、产品、羽毛球的基本知识、场地、比赛规则、羽毛球技术等。

  2.5性能需求分析

  会员用户和管理员都要求一个简洁高效的网站系统为他们提供合适便捷的服务,因此要求此网站具有良好的人机界面,使得双方,无论对于网站的运行是否了解,都能轻易掌握网站的各个关键作用的用法,容易上手。也为了会员用户和管理员能以最快捷的方式了解俱乐部的最新消息,并且方便双方对有权限的信息进行查询、修改。因此要求网站的结构清晰明了,让使用者能直接获取相关接口并浏览相关信息。

  在调试和运行过程中,应该能够让网站正常使用时不出错,能够保证数据的正确性、信息的可靠性、实现的高效性、网站的易使用性、网站管理的可维护性、信息的可测试性、数据的复用性、数据库的安全保密性、数据的可移植性以及网络互联性。

  2.6开发和系统运行环境需求

  2.6.1硬件环境

  目前的硬件可以说都可以浏览该网站,该网站对硬件的要求不高。且目前的硬件价格越来越低,但性能却越来越好。浏览该网站不成问题。

  (1)服务器端[8]

  服务器端的最低配置是由建立站点所需的软件来决定,在最低配置的情况下,服务器的性能往往不尽人如意,现在的硬件的性能已经相当出色,而且价格也很便宜,所以通常应给服务器端配置高性能的硬件。

  的系统服务器的配置如下:

  处理器:Intel Pentium 4 1.6GHZ或是更高。

  内存:265M或是更高。

  硬盘空间:80GM或是更高。

  显卡:SVGA显示适配器。

  (2)客户端

  因为客户端主要用于浏览和操作数据,所以对客户端的硬件要求不高,不过现在的电脑有很好性价比,因此实际的配置一般不高于下面的配置。

  处理器:Intel Pentium 166 MX或是更高。

  内存:128MB。

  硬盘空间:40GB。

  光驱:CD-ROM 48X。

  显卡:SVGA显示适配器。

  2.6.2软件环境

  (1)服务器端

  操作系统:Windows 2000 Server或是更高。

  网络协议:TCP/IP。

  Web服务器:Internet Information Server 5.0/Personal Web Server。

  数据库:Microsoft SQLSever2000。

  浏览器:Internet Explorer 5.0以上。

  (2)用户端

  操作系统:Windows98/ME/2000/XP。

  网络协议:TCP/IP。

  数据库:Microsoft SQLSever2000。

  浏览器:Internet Explorer 5.0以上。

  第3章总体设计

  3.1网站功能模块设计

  本网站由三大主要模块组成:用户管理模块、学习管理模块、通知管理模块。具体功能模块结构如图3.1所示。

  图3.1网站功能模块

  本学习网站的用户可以分为两大类:普通用户、管理员。

  其中学生用户通过网站注册/登录页面验证信息后即可进入网站首页,然后可通过点击修改个人资料进入修改个人资料的页面进行个人资料的修改;也可通过搜索资料与试题进行试题与资料的搜索,以进行C语言程序设计的学习;也可通过点击通知进入通知页面浏览通知信息;也可进入个人中心查看自己的学习进度;还可上传和删除试题。以上所描述的通过导航栏点击超链接转入相关页面,部分页面也可通过在首页的各个部分点击相关内容跳转至响应页面浏览相关信息。

  管理员通过网站登录页面验证信息后进入后台管理页面,可进行用户的添加、删除和查询;也可进行资料和试题的添加、删除和查询。

  3.2用户管理模块

  用户管理模块包括用户注册、用户登录、用户管理。

  3.2.1用户注册子模块设计

  其中用户注册也就是用户的添加,其中主要是向学习网站的数据库中添加用户的各项信息,使该用户成为俱乐部的一员。用户在登录页面即可获取注册的通道,注册的时候提供的信息中要求用户名在5-20个字符之间,密码在6-16个字符之间,为了确认用户设置的密码无误需要用户再次输入密码。剩下的信息主要是用户的个人信息,但要求都必须填写完毕才能提交。

  3.2.2用户登录子模块设计

  用户登录分为普通用户登录和管理员登录,但是验证两者登录的原理都相同,那就是将登录者所输入的用户名和密码与数据库已有的用户名和密码匹配,如果都能匹配成功那么即可成功登录,否则不允许非法登录者进入学习网站以及后台管理系统。

  3.2.3用户管理子模块设计

  用户管理分为普通用户对个人信息的管理和管理员对所有用户信息的管理。用户的个人信息管理可以修改除用户名以外的所有信息,而管理员通过后台管理页面可以修改所有用户除用户名以外的所有信息。

  3.3学习管理模块

  学习管理模块主要包括查询资料/试题、添加资料/试题和资料/试题管理。

  3.3.1查询资料/试题子模块设计

  普通用户通过首页的搜索功能可以浏览搜索到的学习资料和试题,通过点击阅读资料或试题的详细内容。管理员除此之外还可以进入后台管理页面以管理的方式查询资料/试题,进而添加资料/试题。系统通过制定算法查询数据库中的已有资料/试题数据,并分页显示给管理员。

  3.3.2添加资料/试题子模块设计

  添加资料/试题子模块普通用户和管理员都可以使用。普通用户通过点击导航栏中发布资料/试题,进入资料/试题的编辑页面。资料通过上传附件的形式上传,用户可以编辑资料的题目、关键字,点击上传后资料经由管理员审核后方可供自己和他人阅读;在试题编辑页面中,用户可以编辑试题的题目、关键字和试题的内容,设置试题的标准答案,点击上传后资料经由管理员审核后方可供自己和他人阅读。

  3.3.3学习管理子模块设计

  普通用户可以通过点击导航栏的个人中心进入个人中心查看学习进度,可删除进度。管理员可以在后台管理页面中对资料和试题进行添加和删除。

  3.4通知管理模块

  通知管理模块包含三个子模块:查询通知、添加通知和管理通知。由于功能与学习管理的三个子模块类似,并且对数据库的操作方式也基本相同,在此就简要说明一下即可。

  查询通知也区分普通用户和管理员,普通用户只可通过前端浏览相关通知,管理员则可通过前端浏览,通过后台查看,然而添加通知和管理通知都是需要拥有管理员权限的用户才能进行访问并通过后台管理页面进行通知的增加、删除、修改和查询。

  3.5模块流程设计

  为了更好地发挥各个模块的功能,需要注重每一个模块的流程,才能使系统设计更加科学合理,与此同时也便于系统的扩充。现对本网站的几个流程进行说明。

  3.5.1用户登录流程图

  用户进入登录入口输入用户名和密码,如果用户名存在于数据库中则检验数据库中存储的用户名和密码是否与输入的匹配,如果匹配则进入网站,否则都留在登录入口。具体流程图如图3.2所示。

  图3.2用户登录流程图

  3.5.2用户管理流程图

  管理员登录后台管理页面后选择查询所有用户的信息,如果有用户则返回所有用户的信息列表,否则留在后台主界面。然后选择查询结果中的用户,并进入修改界面,然后修改用户信息,系统检查所修改的用户信息是否合法,如果合法则修改成功,否则退回到修改界面。具体流程图如图3.3所示。

  图3.3用户管理流程图

  3.5.3添加资料/试题流程图

  普通用户通过点击导航栏中发布资料/试题,进入资料/试题编辑页面;管理员通过后台系统发布资料/试题,进入资料/试题编辑页面。进入编辑页面后,首先输入标题,在离开输入框后检查标题是否合法,如果合法则输入正文内容,否则重新输入标题。然后在提交的时候检查资料/试题正文是否合法,如果合法的话则添加成功,否则需要重新输入。普通用户上传成功的资料/试题还需经由管理员审核才可供用户阅读。具体流程图如图3.4所示。

  图3.4添加资料/试题流程图

  3.5.4修改通知流程图

  管理员登录后台管理页面后选择通知管理进入到管理通知的页面,系统会自动查询出所有的已有通知并以列表的形式呈现。管理员选择其中需要修改的通知然后进入编辑通知的页面,首先输入通知标题,在离开输入框后检查标题是否合法,如果合法则输入通知正文,否则重新输入标题,在离开输入框后检查通知正文是否合法,如果合法的话则修改通知成功,否则需要重新输入。具体流程图如图3.5所示。

  图3.5修改通知流程图

  第4章数据库设计

  4.1数据库需求分析

  数据库是网站保存所有重要信息的地方,因此,一个良好的高效率的网站系统必定需要一个高效的数据库设计来支撑。本网站的数据库设计主要就是针对高效率进行的。

  本网站人性化设计,功能齐全,界面友好,操作方便,能够实现的功能有用户管理、学习管理、通知管理,能更好地为计算机程序设计学习网站用户服务,也便于网站管理人员管理,从而达到信息化管理的目标。

  网站有普通用户、管理员两个用户权限级别。在管理员主页中可以实现浏览所有用户信息、所有资料信息、所有试题信息、所有通知信息、显示所有用户基本资料、添加新用户、删除已有用户、添加管理员、分别添加、修改、删除和查询资料/试题以及通知等功能。普通用户可浏览个人信息、修改个人信息、浏览资料、试题和通知等。

  4.2概念设计

  本网站采用E-R模型的概念结构设计方法。概念模型是一个抽象的存在,是现实世界所产生和储存的信息的反应,进行相对应的分析、选择等操作。数据库概念模型实际上是用户看到的数据信息。本网站有4个实体:用户基本信息实体、资料基本信息实体、试题基本信息实体、通知基本信息实体、资料、试题、通知添加关系实体。

  用户基本信息实体如图4.1所示。

  图4.1用户基本信息实体图

  资料基本信息实体如图4.2所示。

  图4.2资料基本信息实体图

  试题基本信息实体如图4.3所示。

  图4.3试题基本信息实体图

  通知基本信息实体如图4.4所示。

  图4.4通知基本信息实体图

  资料、试题、通知添加关系实体如图4.5所示。

  图4.5资料、试题、通知添加关系实体图

  4.3数据库设计

  4.3.1数据库在网站开发中的作用特点

  本网站系统要求能够对用户进行管理,如添加用户、删除用户、设置用户权限、修改用户的详细信息等。要求能对新用户信息进行登记,对已经变更的会员信息进行修改,对不再是俱乐部会员的相关信息进行删除。还可以查询用户的详细信息,以及资料、试题和通知的内容。数据库设计在本网站管理系统中发挥着关键的作用,能够将网站功能最大化,主要体现在:1、优化信息分类,确保运行环境安全;2、数据库开发能够支持网站系统数据的多样化;3、满足数据的灵活多样化管理。

  本网站利用ER方法进行数据库的概念设计,可分成三步进行:首先设计局部ER模式,然后把各局部ER模式综合成一个全局模式,最后对全局ER模式进行优化,得到最终的模式,即概念模式。

  4.3.2设计局部ER模式

  实体和属性的定义:

  普通用户(用户名,密码,性别,生日,电子邮箱,联系电话,注册时间)

  管理员(用户名,密码)

  资料(资料号,标题,作者,上传者,修改时间,正文)

  试题(试题号,标题,作者,上传者,修改时间,正文)

  通知(通知号,标题,作者,修改时间,正文)

  本网站的资料、试题、通知与管理员和普通用户之间的修改和浏览关系的局部ER图如图4.6所示。

  图4.6修改、浏览关系局部ER图

  ER模型的“联系”用来描述实体之间的关联性。一种相对而言比较完整的方式是对局部结构中的任意两个实体类型,依据对其需求分析的结果,来考察局部结构中任意两个实体类型之间是否存在联系。如果存在联系,则应进一步确定是1:n,m:n,还是1:1等。除此之外,还要考察一个实体类型的内部是否存在着联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在着联系等等。对于任何普通用户,网站内的资料、试题、通知都可以随意浏览;对于所有的管理员,网站内部的所有的资料、试题和通知都可修改。所以资料。试题和管理员是m:n,通知和管理员是m:n,试题和普通用户是m:n,通知和普通用户是m:n。

  4.3.3设计全局ER模式

  全局概念结构不仅要支持所有局部ER模式,而且必须合理地表示一个完整、一致的数据库概念结构。根据所学数据库相关知识进行全局ER模式设计的时候需要注意以下三点。

  首先是确定公共实体类型。为了给合并多个局部ER模式提供开始合并的基础,首先需要确定各局部结构中的公共实体的类型。在这一步中根据实体的类型名和主键来判断是否是公共实体类型。一般把名字相同的实体类型和具有相同主键的实体类型作为公共实体类型的候选。

  然后是局部ER模式的合并。合并的原则是:首先进行两两合并;然后合并那些现实世界中有着相互联系的局部结构;合并先从公共实体类型开始,最后再将剩下的未合并的独立的局部结构加入全局模式。

  最后是消除冲突。冲突总共分为三类:属性冲突、结构冲突、命名冲突。设计全局ER模式的目的不在于把若干局部ER模式单纯的合并为一个ER模式,而在于消除各类冲突,使之成为能够被所有用户共同理解和接受的统一的概念模型,从而更加简单明了的表现出所有实体之间的联系。

  通过以上的分析可得本网站的初始全局ER模式,如图4.7所示。

  图4.7网站初始ER图

  4.4逻辑设计

  由于完成概念设计后所得到的只是ER图,而数据库管理系统DBMS一般采用是关系型,所以数据库的逻辑设计过程实际上就是把ER图转化为关系模式的过程。在逻辑设计的过程中可以充分运用关系数据库规范化理论,使设计过程形式化地进行。完成逻辑设计后所得到的应该是一组关系模式的定义。本次设计采用的数据库软件是Microsoft SQLServer 2008数据库。

  以下是数据库表的基本信息:

  1、用户基本信息表(users)如表4.1所示

  表4.1用户基本信息表的结构

  列名数据类型长度可否为空说明是否为主键

  username varchar 20 not null用户名是

  password varchar 16 not null密码否

  sex char 2 not null性别否

  birth date 30 not null生日否

  email varchar 50 not null电子邮箱否

  phone varchar 20 not null手机号码否

  time date 30 not null注册时间否

  2、管理员基本信息表(admin)如表4.2所示

  表4.2管理员基本信息表的结构

  列名数据类型长度可否为空说明是否为主键

  adminname varchar 20 not null用户名是

  password varchar 16 not null密码否

  3、资料基本信息表(material)如表4.3所示

  表4.3资料基本信息表的结构

  列名数据类型长度可否为空说明是否为主键

  matid int—not null资料号是

  matitle varchar 100 not null标题否

  author varchar 20 not null作者否

  up varchar 20 not null上传者否

  time date 30 not null修改时间否

  matext text—not null正文否

  4、试题基本信息表(test)如表4.4所示

  表4.4试题基本信息表的结构

  列名数据类型长度可否为空说明是否为主键

  teid int—not null试题号是

  tetitle varchar 100 not null标题否

  author varchar 20 not null作者否

  up varchar 20 not null上传者否

  time date 30 not null修改时间否

  tetext text—not null正文否

  5、通知基本信息表(notification)如表4.5所示

  表4.5通知基本信息表的结构

  列名数据类型长度可否为空说明是否为主键

  noid int—not null通知号是

  notitle varchar 50 not null标题否

  author varchar 20 not null作者否

  time Date 30 not null修改时间否

  notext Text—not null正文否

  第5章详细设计

  通过系统设计、代码编译、系统测试,本网站的功能已基本实现。本章主要介绍系统实现的界面截图和部分代码。

  5.2后台管理系统实现

  5.2.1管理员登陆页面实现

  由于管理员的账号是直接由系统指定加入数据库,所以不存在注册的问题,所以后台管理员的登陆只考虑用户名和密码是否与数据库保存的数据匹配,若匹配则进入系统,否则返回登陆界面。登陆界面如图5-1所示,登陆失败界面如图5-2所示。

  5.2.2后台管理首页

  管理员登陆成功后即可进入首页。首页中包含了搜索会员的功能,用户在输入框中输入用户名点击搜索即可在数据库中查询指定的会员的信息。其中用到了UserDBean中的search方法。首页实现如图5-3所示,通过首页的搜索功能搜索会员的结果如图5-4所示。

  5.2.3会员管理及添加会员

  管理员点击会员管理即可得到所有会员信息,并按照每页5条信息显示。管理员点击添加会员即可添加会员,添加成功返回到会员管理页面,否则返回添加会员页面。会员管理第一页如图5-5所示,会员管理第二页如图5-6所示。

  5.2.4新闻管理及添加新闻

  管理员可在后台进行管理已有新闻以及添加最新新闻操作,通过左侧的导航栏进入。新闻管理首页的实现如图5-8所示,通过新闻管理首页所提供的所有新闻信息,可点击提供的编辑和删除功能对新闻进行相应的操作。

  编辑新闻的实现如图5-9所示,删除会员直接通过JSP页面调用相应的javabean直接进行数据库操作,再跳转回新闻管理页面。添加新闻的界面和编辑新闻共用一个页面,根据提供的不同信息显示相应的操作页面。其中添加新闻时标题的文本框可编辑,而修改时则不能编辑。在编辑/添加页面中,当管理员提交信息后将一并将修改新闻的管理员账号和修改时间一并提交到数据库保存。

  5.2.5通知管理及添加

  通知管理及添加的实现和新闻管理的具体思路相同,并且由于在需求分析以及前期的总体设计中确定通知管理和新闻管理的实现思路基本一致,所以实现的代码页大同小异,所以不再赘述具体实现的源代码,在此只展现实现通知管理的页面。通知管理的实现如图5-10所示,添加/编辑通知的实现如图5-11所示,添加通知的页面如图5-12所示。

  5.3.1页面实现

  将羽毛球俱乐部网站的登陆页面和注册页面合并到一个网页,使得用户注册后就可以直接登录,方便快捷。用户注册信息使用JavaScript的正则表达式检验,用户登录时将用户名和密码与数据库连接检验数据。实现的页面如图5-13所示,源代码如下:

  5.3.2注册检验实现

  检验使用JavaScript的正则表达式,如果用户注册是输入的信息中:

  1、用户名字符长度不在5至20个字符之间,则会显示警告信息提醒用户;

  2、密码长度不在6至16个字符之间或者再次输入的密码与初次输入的密码不同,也会显示警告信息提醒用户;

  3、姓名则必须是2至4个中文字符长度;

  4、年龄必须是两位数字,否则也会显示警告信息;

  5、职业和工作单位必须不为空。

  5.3.3首页实现

  首页主要分为五部分显示,分别为logo区域、导航栏区域、主体显示区域、赛程&通知区域、页脚区域。这五部分在一个div层中,由上而下为logo区域和导航栏区域,主体区域和赛事&通知区域在一个div层中,最后则是页脚区域。下面分别介绍这五部分的具体内容:

  1、Logo区域:除了显示logo之外,还显示欢迎信息并提供用户退出链接;

  2、导航栏区域:为用户提供网站各个模块的访问链接,分别为首页、新闻、羽毛球知识、羽毛球装备、账号管理;

  3、主体区域:显示俱乐部最新的活动新闻,并显示羽毛球知识的简要介绍,用户可在此区域点击相应连接进入相应的网页以了解详细信息。

  4、赛事&通知区域:由于俱乐部的最新通知需要会员及时的了解,所以赛事&通知区域会一直显示在网站的所有页面中,以使会员方便了解俱乐部最新通知;

  5、页脚区域:显示版权信息。

  具体的羽毛球俱乐部网站的首页如图5-15所示。

  5.3.4新闻模块实现

  新闻模块的实现主要有两方面,一方面是按照新闻发布的先后分页显示新闻的概览页面;一方面是会员用户点击一条新闻标题后进入新闻文章的页面。其中显示新闻概览的页面主要显示新闻的标题、发布日期以及具体新闻的简短信息,显示新闻文章的页面则是为用户提供包括新闻标题、发布时间做着和正文等详细信息。新闻的概览页面如图5-15所示,新闻文章页面如图5-16所示。

  5.3.5赛程&通知模块实现

  赛程&通知的侧边栏只显示四条最新的通知概览信息,用户可点击相应的通知进入详细的通知文章页面,也可点击赛程&通知标题进入通知概览页面。赛程&通知模块会作为左侧边栏一直出现在整个网站的前端,在之前的前端页面中也出现过,所以在此只展示通知的概览页面和通知文章的页面。通知主页面如图5-18所示,单个通知的详细信息如图5-19所示。

  5.4小结

  在本章详细设计中所得到的最大的收获就是对JSP、Java、Javascript语言有了很大程度上的了解,也在一定程度上熟悉了数据库方面的查询。在编写代码的过程中,首先按照总体设计的思路建立数据库,然后进行后台管理系统的编写,对数据库存储的数据进行增删改查的操作转化为JavaBean并将其使用到后台管理页面中。后台管理系统编写完毕后,由于在整个毕业设计相关知识的学习中我就在不断地思考、设计前端的架构显示,所以在后台开发完毕后,前端的框架其实已经差不多搭建好,剩下的只是将数据库中的数据查询出来后显示在前端的相应位置。所以相对于后台的编写,前端实现起来比较轻松。

  第6章网站测试与维护

  6.1网站测试

  测试是为了发现程序中的错误而执行程序的过程。好的测试方案是极可能发现迄今为止尚未发现的错误的测试。成功的测试是发现了至今为止尚未发现的错误的测试。

  测试是为了找出缺陷,但同时,也可以通过对缺陷的度量和统计,分析缺陷产生的原因和缺陷的分布特征,分析产品的质量、工作效率、诊断开发过程中的问题,并通过改进各个开发过程提高过程能力,最终降低缺陷数量和缺陷密度[9]。

  在编写代码的过程中保持没开发出一张页面完成其一个功能就进行测试,保证开发的页面功能基本完善并且在找出BUG后立即修复,以免对以后页面的开发造成影响。

  本章使用黑盒测试法测试羽毛球俱乐部网站,不考虑程序内部结构和处理过程。在实际测试中,登录大概需要1秒钟,查询页面大概需要2至3秒,添加会员、新闻和通知大概需要2至3秒钟,修改信息大概需要2至3秒钟,由此可见他与其他平台开发的网站性能更优。

  6.2网站维护

  网站维护包括网站出错处理与安全保密维护设计:

  6.2.1出错处理设计

  不处理由于不可预见的操作系统错误而引起网站出错。

  在编写与数据库连接相关的代码时,如果由于对数据库的数据操作产生错误则会抛出相关数据库的异常,而常见的异常都经过处理用中文显示,不常见的异常则可能由数据库本身出错而非连接方面出错,则可在数据库所建表格中寻找错误。

  6.2.2安全保密设计

  本网站无论是在会员登录时还是在管理员登录时都采用登录名以及密码与SQL Server 2008的数据库中的数据进行匹配来确保网站上数据的安全性,所以即使源代码被泄露,也不会暴露用户名和密码,一定程度上提高了安全性。