1、校园新闻网站系统设计与开发 二级学院:工程与设计学院专业:网络工程 班级:网络12 学生姓名:胡金科 指导教师:陆韬 摘要 快速发展的互联网,作为新兴的媒体发布形式,已经逐步影响到传统媒体行业的发展。现有的用来实现新闻发布的技术已经比较成熟,但是在素材管理、编辑、上载以及最终的页面发布和更新等方面,多数还采用较为原始的手工方法。这种手工模式费时费力,效率低下。我们针对上述状况,推出了校园新闻网站,使所有功能集成在一个系统中,可自动有效地完成工作,并且支持多种存储格式,可有效地提高系统效率,并使管理规范化。 本次设计,是在充分了解新闻业务流程的基础上,采用一系列最新的信息处理技术,对新闻
2、从发布到展示进行科学化管理,实现了新闻信息的最广泛共享,使新闻可以通过计算机网络高效地完成发布。 关键词 新闻网站 系统 模块设计 Campus news website system design and development Secondary school: College of Engineering and Design Profession: Compute science & technology Class:W12 classes Name:Jinke Hu Instructor:
3、Lutao Abstract rapid development of the Internet as a new form of media releases, has gradually affected the development of the traditional media industry. Existing techniques used to achieve the press release is relatively mature, but in material management, editing, uploading and publishing the f
4、inal page and update other aspects, the majority also uses more primitive manual methods. This manual mode is time-consuming, and inefficient. Our response to these conditions, the introduction of Campus news sites, so that all functions are integrated in one system can automatically get the job don
5、e efficiently, and supports a variety of storage formats, which can effectively improve system efficiency, and management standardization. This design is in full knowledge of the news business processes, based on a range of the latest information processing technology, scientific management of the
6、news release from the show, to achieve the most extensive sharing of news and information, so that the news can be via a computer network efficient completion of release. Key words News sites systems modular design 目录 引 言 1 第一章 绪论 2
7、 1.1 项目开发的背景 2 1.2 项目开发的目的 2 1.3 课题研究方法 3 第二章 系统分析 4 2.1 功能需求分析 4 2.2 本系统采用的关键技术 5 2.2.1 jsp技术 5 2.2.2 myeclipse简介 7 2.3可行性分析 7 2.3.1政策的可行性 7 2.3.2经济上的可行性 8 2.3.3技术可行性 8 2.3.4操作可行性 8 2.4系统运行环境 8 第三章 系统概要设计 9 3.1 总体功能 9 第四章 系统详细设计 11 4.1 数据库设计 11 4.1.1 Mysql数据库介绍 11 4.1.2数据库表结构 11
8、 4.2 处理流程设计 14 4.2.1 系统操作流程 14 4.2.2 数据增加流程 14 4.2.3 数据修改流程 15 4.2.4 数据删除流程 16 4.3 系统模块设计 17 4.3.1 管理登录 17 4.3.2 系统用户登录 17 4.3.3 公告信息 18 第五章 系统调试与测试 19 5.1 程序调试 19 5.2程序的测试 19 5.2.1 测试的重要性及目的 19 5.2.2 测试的步骤 20 5.2.3 测试的主要内容 20 5.2.4 测试环境与测试条件 21 5.2.5 实例测试 21 5.3 测试总结 22 第六章 后记 23
9、 6.1 系统评价 23 6.2 安全性问题 23 参考文献 24 致 谢 25 IV 丽水学院2016届学生毕业设计(论文) 引 言 自20世纪50年代末以来,计算机的出现和逐步普及,把信息对整个社会的影响逐步提高到一种绝对重要的地位。当今世界,一个人一旦没有了网络与信息共享,那么他基本上已经脱离了世界。整个世界没了网络与信息共享,那么人类又将返回电气时代。如此足见信息的及时传播对人类乃至世界是多么重要,为此作为信息传播媒介的新闻网站应运而生。 新闻网站作为在网络信息的高速路上及时快速传播信息的媒介,如何使读者方便快捷的浏览新闻很重要。对于后台管理人员来说
10、新闻网站的后台界面需要能方便进行增删改减操作、快速地响应操作内容,而且能保证后台服务器上的数据不被非法盗取和利用,也不会突然的实效而使整个系统奔溃,因此如何设计新闻网站使其具有这四种特点是网页设计及网站建设人员的工作重心。本项目是通过PS以及CSS3+html技术,完成对校园新闻网站系统的设计与开发。 第一章 绪论 1.1 项目开发的背景 当今计算机已经被广泛应用于科研、教育、国防、金融等社会的各个方面,计算机网络技术也得到飞速的发展。人们上互联网不单单只是为了浏览网站和收发电子邮件,日常生活中的各项活动,人们都力求通过网络远程完成。而对于新闻单位来讲,通过网络可以更广泛便捷的发布国际
11、国内新闻信息。随着互联网技术的迅猛发展,为媒体行业提供了新的信息传播媒体,媒体行业采用最前端技术使节目的制作质量得到了飞速提高。目前许多新闻网站的信息大多是静态的HTML页面,每次更新信息需要做一个页面,然后FTP上传,再修改页面链接,这样维护非常麻烦,而本次要开发的抚州新闻网站大大减轻了网站更新维护的工作量,通过信息后台维护程序在浏览器上只需录入文字就可以快速实现信息维护,从而大大加快了信息的传播速度,时时保持网站的活动力和影响力。 新闻网站,是将网页上的某些需要经常变动的信息,类似新闻、新产品发布和业界动态等更新信息集中管理,并通过信息的某些共性进行分类,最后系统化、标准化发布到网站上的
12、一种网站应用程序。网站信息通过一个操作简单的界面加入数据库,然后通过已有的网页模板格式与审核流程发布到网站上。手工制作发布的新闻信息不但无法检索堆积如山的信息,而且每次更新内容并上传的时候都会使服务中断,导致用户无法访问而使形象和服务大打折扣。新闻网站的出现大大减轻了网站更新维护的工作量,通过网络数据库的引用,将网站的更新维护工作简化到只需录入文字和上传图片,从而使网站的更新速度大大缩短,在某些专门的网上新闻站点,如新浪的新闻中心等,新闻的更新速度已经缩短到五分钟一更新,从而大大加快了信息的传播速度,也吸引了更多的长期用户群,时时保持网站的活动力和影响力。 当今社会为信息社会,信息已成为
13、继劳动力、土地、资本之后的又一大资源,谁控制的信息越多,谁利用信息资源的效率越高,谁就会在各方面的竞争中,占有一席之地,谁就会更有优势,这一点已得到举世公认。人们对信息的时效性越来越重视,传统的以报纸、杂志为载体的新闻媒介早已不能满足人们对新闻实时性的要求,而动态交互式网页刚好提供了这些功能,系统管理员通过internet能够方便,快速,简洁的管理新闻;普通用户能够快速地浏览新闻,满足了学校对于新闻发布的电子政务的要求,提高学校新闻报道及管理方面的工作效率。 1.2 项目开发的目的 综上所述,可以看出新闻发布系统对学校办公的作用越来越大,运用3大架构和JDBC技术整合数据库的开发。开发动态
14、网页前台浏览页面根据后台数据动态生成,通过已有的网页模板格式与审核流程发布到网站上,为网络用户提供各种媒体显示。网络发展前景无限,及早与网络结合,与信息时代同步,与高科技汇合,定会给学校电子公务的发展注入新鲜的活力。 面对着信息时代的变更、新闻行业的快速发展,新闻单位也要走出自己的竞争路线,要依靠互联网,利用其交互性、时时性的特点,为自身作宣传,让客户了解媒体的最新动态、为客户提供优良多样化的服务,从而提高服务质量,即时与用户沟通交流以提高客户的满意度和忠诚度。该平台具有如下优点: 1.在数据库的设计过程中,如何处理多对多的关系,有着较大难度、需要重点考虑的问题。 解决方法:应着重从SQ
15、L应用、数据库设计范式和查询优化等方面来分析本课题的系统关键技术和实现难点并加以解决。 2.新闻系统设计要确保账号权限,数据保存,信息保密方面的可靠性,使系统具有良好的安全性。 解决方法:以入侵检测形式对系统进行安全测试,找出存在的程序漏洞进行分析并进行修补。 3.新闻系统设计满足了学校日常新闻发布及管理需求,但不够完善。因为在实际应用中,用户需求会随环境变化而改变,对新闻的有效性,实时性又提出了新的要求。 解决方法:在系统设计可扩展性接口,为相关用户(老师,学生)的新闻业务的拓展及新的需求提供拓展。 1.3 课题研究方法 本设计采用JSP技术进行设计,数据库采用My SQL数据库
16、具体研究方法步骤如下: 1.应用程序背景和需求分析:通过资料收集法对现行新闻网站的分析,得出了网站的业务流程,通过分析各个模块的功能得出网站的需求分析。 2.组建开发:通过对几种开发语言进行比较分析,最终选定以Java作为开发语言,以JSP为开发技术,并且搭建程序开发平台My Eclipse. 3.数据库设计:本系统采用微软的My SQL作为数据库,通过对网站的各个实体属性进行分析,得出ER模型图,通过分析ER图,最终得出数据库表设计。 4.编写应用程序:遵循面向接口的设计方式,来完成这样有利于系统的可扩展性。因此对系统层次的把握对接口设计至关重要。 5.测试和优化应用程序:通过白
17、盒测试,黑盒测试等多种方式对系统进行模块测试和系统测试。 6.发布数据库和应用程序:完成设计后,在My Eclipse中发布程序运行。 第二章 系统分析 2.1 功能需求分析 新闻网站,又称为新闻发布系统,是将网页上的某些需要经常变动的信息,类似各类新闻、最新产品信息发布和业界动态等更新信息集中管理,并通过信息的某些共性进行分类,最后系统化、标准化发布到网站上的一种网站应用程序。网站信息通过一个操作简单的界面加入数据库,然后通过已有的网页模板格式与审核流程发布到网站上。它的出现大大减轻了网站更新维护的工作量,通过网络数据库的引用,将网站的更新维护工作简化到只需录入文字和上传图片,从
18、而使网站的更新速度大大缩短,在某些专门的网上新闻站点,新闻的更新速度已经缩短到五分钟一更新,从而大大加快了信息的传播速度,也吸引了更多的长期用户群,时时保持网站的活动力和影响力。 本系统需要具有以下功能: (1)由于一项新的软件在被使用之前,对于使用者来说是陌生和崭新的,所以要求系统具有良好的人机界面。 (2)能够实现新闻发布的各项功能,能成功的对用户各种信息进行管理。 (3)查询、修改、删除、添加数据方便,数据的稳定性和可靠性好。 系统采用B/S模式。整个系统最关键的就是数据库系统,一个强大的数据库可以支持完善一个优秀的软件设计,通过软件系统与数据库系统的连接来实现通过软件界面观
19、察和处理操作数据。 业务服务器 数据库服务器 事务逻辑 数据逻辑 Client Browser 表示逻辑 Browser 表示逻辑 JSP网页 WWW服务器/业务逻辑服务器 JavaBean组件 中间件 JDBC 数据库服务器 数据库 Mysql 图2-1系统模式图 系统采用三层结构,在客户端用户通过浏览器完成数据下载与模拟操作,浏览器端的表现逻辑通过JSP网页完成。而系统内部复杂的业务逻辑主要通过struts框架来实现,JavaBean组件在WWW服务器上运行,通过JSP返回到客户浏览器。通过表现逻辑与业务逻辑的分离,使网页内容简洁,系统
20、的可维护性和可扩充性增强。在服务器端,系统使用hibernate中间件访问数据库,数据库服务器定义了本系统所需要的事务逻辑和数据逻辑。本系统使用JSP技术作为表现手段,服务器采用Tomcat 5.0.3作为JSP引擎,系统业务逻辑由JavaBean 组件完成,使用JDBC 驱动程序访问数据库。由于系统测试需要成熟的数据库支持,因此系统采用MYSQL 2000数据库作为数据库服务器。 2.2 本系统采用的关键技术 2.2.1 jsp技术 JSP是由Sun微系统公司于1999年6月推出的一项技术,是基于JavaServlet以及整个Java体系的Web开发技术,利用这一技术可以建立先进、安全
21、和跨平台的动态网站。JSP技术在多个方面加速了动态Web页面的开发。它主要有如下几个方面的特点: 使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐号信息或者一本书的价格)。生成内容的代码被封装在Servlet和JavaBean组件中,并且结合在脚本中,所有的脚本在服务器端运行。 JSP引擎解释JSP标识和脚本程序,生成所请求的内容(例如,通过访问JavaBean组件,使用JDBC技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有
22、助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。 绝大多数JSP页面依赖于可重用的、跨平台的组件(JavaBean或者Enterprise JavaBean组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行组件,或者使得这些组件为更多的使用者或者客户团体所使用。此方法加速了总体开发进程。 Web页面人开发人员不都是熟悉脚本语言的编程人员。JSP技术封装了许多功能:访问和实例化JavaBean组件、设置和检索组件的属性、下载Applet以及执行用其他方法更难于编码和耗时的功能。 JSP技术可以通过开发定制的标识库进行扩展。第三方开发人员和其他
23、人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样执行特定功能的组件来工作。当与Java2平台、J2EE和Enterprise JavaBean(EJB)技术整合时,JSP页面将提供教学单位级的扩展性和性能,这对于在教学单位中部署基于Web的应用是必需的。 与微软公司的ASP技术相比,JSP具有如下优点: (1)开放的技术:JSP技术基于平台和服务器的相互独立,技术支持来自广泛的、专门的、各种工具包,有服务器的组件和数据库产品开发商提供。相比之下,ASP技术主要依赖MICROSOFT支持。 (2)平台和服务器的独立性:JSP编写的代码可运行在任何
24、符合JAVA语法结构的环境中。这样JSP就能够运行在多种WEB服务器上并支持来自多家开发商提供的各种工具包。 (3)开放的开发过程,开放的源码:自1995年以来,SUN用开放过程方法同国际JAVA组织合作开发和修改JAVA技术和规范。 (4)JSP标记可扩充性:JSP技术能够为开发者扩展JSP标记,充分利用与XML兼容的标记技术强大的功能,大大减少对脚本语言的依赖。 (5)JSP跨平台的可重用性:JSP组件(EJB,JavaBean或定制的JSP标记)都是跨平台可重用的。 JSP作为一个很好的动态网站开发语言得到了越来越广泛的应用,在各类JSP应用程序中,JSP + JavaBean的
25、组合成为了一种事实上最常见的JSP程序的标准. JavaBean是描述Java的软件组件模型,有点类似于Microsoft的COM组件概念。在Java模型中,通过JavaBean可以无限扩充Java程序的功能,通过JavaBean的组合可以快速的生成新的应用程序。对于程序员来说,最好的一点就是JavaBean可以实现代码的重复利用,另外对于程序的易维护性等等也有很重大的意义。JavaBean通过Java虚拟机(Java Virtual Machine)可以得到正确的执行,具有平台无关性。 图2-2浏览器与服务器的请求与响应方式 一个JavaBean有三个部分组成: 属性(Proper
26、ty) Bean的属性就是对象的属性,但提供了属性读取和设置的接口支持。例如一个时钟Bean可以有时区和镇铃属性,日历Bean可以有年份和月份属性。每个属性通常遵守简单的方法命名规则。这样可以很方便的找出Bean提供的属性,然后查询属性值或改变属性值,对Bean进行操作。 方法(Method) 由于Bean本身是Java对象,调用这个对象的方法是与其交互作用的唯一途径。JavaBean严格遵守面向对象的类设计逻辑,不让外界访问其任何实例字段(没有Public字段)。这样,方法调用的是接触Bean的唯一途径。 事件(Event) Bean与其他软件组件交流信息的主要方式是发送和接收事件
27、这与对象之间通过消息通信类似。 JavaBean传统的应用在于可视化的领域,如AWT下的应用。自从JSP诞生后,JavaBean更多的应用在非可视化领域,在服务器端应用方面表现出来了越来越强的生命力。利用非可视化JavaBean, 来封装事务逻辑、数据库操作等等,可以很好地实现业务逻辑和前台程序(如JSP)的分离,使得系统具有更好的健壮性和灵活性。 2.2.2 myeclipse简介 MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以
28、及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。 MyEclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC数据库链接工具等多项功能。
29、可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具。 2.3可行性分析 可行性分析也称为可行性研究,是在调查的基础上,针对新网站的开发是否具备必要性和可能性,对新网站的开发从政策、环境、经济等方面进行分析和研究,以避免投资失误,保证新网站的开发成功[1]。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决[2]。 2.3.1政策的可行性 政府的支持与推动。我国政府非常重视新闻媒体的发展,十五计划纲要指出,要大力发展信息化,以信息化带动工业化。新闻单位是信息化的一个重要组成部分,纲要明确提出要“加快认证体系、现代支付系统和信用制度建设
30、大力发展电子商务,通过电子商务特别是企业间电子商务的应用,推动营销、运输和服务方式的变革,降低成本,扩大工业品市场规模。[3] 2.3.2经济上的可行性 随着信息产业科技的迅速发展,带来的直接影响就是信息基础设备价格下降,而且它的价格与时间成反函数,也就是说随着时间的增长价格会不断的下降,这就为我们建设网站提供了方便的经济因素。[4]由于本系统是为学校日常使用的系统,装上该应用软件,即可使用系统,系统成本主要集中在系统软件的开发上,当系统投入运行后可以为学校节约大量的人力,物力。所带来的效益远远大于系统软件的开发成本。在经济上完全可行。 2.3.3技术可行性 浏览本系统仅需要一台装有
31、IE浏览器软件的计算机即可,对机器本身没有太高的要求,一般当前学校或个人电脑完全可满足要求。对于软件技术要求,现在的程序设计语言已非常成熟,要运用HTML样式,图形图象制作工具来制作生动活泼的网页及美观的图形文件或动画文件。 2.3.4操作可行性 界面设计时充分考虑管理人员的习惯,使得操作简单;数据录入迅速、规范、可靠;统计准确;制表灵活;适应力强;容易扩充。 2.4系统运行环境 服务起端的最低配置是由建立站点所需要的软件来决定的,在最底配置的情况下,服务器的性能往往不进人意,现在硬件性能已经相当出色,而且价格也很便宜,因此通常应给服务器端配置高性能硬件。[5] 本机器的配置如下:
32、 处理器:Inter Pentium 41.6Hz或更高。 内存:512MB 硬件空间:160GB 题目主要采用的技术 数据库:Microsoft Mysql 2000。 编程语言技术:JSP+hibernate+struts 服务器:Tomcat5.5,jdk1.6 开发环境:Windows7 第三章 系统概要设计 3.1 总体功能 系统采用了敏捷开发的思想,结合跨平台的jsp语言技术,数据库采用了Mysql;使得系统具有易用性、个性化、跨平台等特点;同时又保证数据的安全、稳定、快速和完整;使其运行得高速、安全、稳定。通过对新闻类网站的调研以及与其他高校网站的对比,该
33、网站将主要提供以下几个个功能模块: 前台实现的功能如下:(1)用户登陆系统:包括用户登入;(2)账户管理模块:包括用户录入、修改密码等;(3)账户管理模块:包括新闻信息查看,新闻搜索,新闻栏目浏览等;(4)评论管理模块:站内评论分为评论发表与评论查看,管理员审核评论,删除评论。 后台实现的功能如下:(1)登入注册模块:包括系统用户管理、添加用户、修改信息;(2)新闻发布管理:新闻信息录入、修改、审核和删除等;(3)附件管理模块:包括附件文件上传、修改和查询等;(4)信息管理模块:通知系统公告等。 丽水学院新闻网站 后台管理员 前台浏览 新闻信息浏览 新闻查询 登录注册
34、 个人资料管理 评论信息管理 图片新闻管理 新闻信息管理 新闻栏目管理 通知公告管理 注册用户管理 系统用户管理 登录密码管理 图-1 E-R图 图3-2系统功能模块图 第四章 系统详细设计 4.1 数据库设计 近年来,Internet技术得到迅速的发展,已经成为计算机产业的一个技术热点。促成Internet高速发展的因素之一就是Web技术。Web技术的发展使得那些具有交互动态页面、有条理的数据库查询、丰富信息内容的页面成为最吸引人的网页。浏览Web有着执行Windows程序一样的感觉和操作性。[6]随着Inter
35、net技术的发展,它已经成为一种操作平台,为用户提供强大的服务,例如网上购物,网上电子商务,社会信息数据库服务等。作为计算机发展最迅速的领域之一的数据库技术,已经形成了一整套独有的理论,并广泛地应用于人们的生产和生活中。[7]数据库技术与网站的结合是当今Web技术的一个热点。有了数据库的支持,可以扩展网页的功能,可以方便地设计出交互式页面,可以构造功能强大的后台管理系统,可以为网站的更新、维护提供极大的方便。[8]因此,作为网络开发者或管理者,数据库知识是必不可少的。 4.1.1 Mysql数据库介绍 Mysql 是一个关系数据库管理系统。它最初是由Microsoft、Sybase 和As
36、hton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2版本。在Windows NT 推出后,Microsoft与Sybase 在Mysql 的开发上就分道扬镳了,Microsoft 将Mysql移植到Windows NT系统上,专注于开发推广Mysql 的Windows NT 版本。Sybase 则较专注于Mysql在UNⅨ操作系统上的应用。[8] Mysql 是Microsoft 公司推出的Mysql数据库管理系统,该版本继承了Mysql 7.0 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft
37、 Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。Enterprise Edition 达到了支撑超大型的企业操作联机业务处理 (OLTP)、强度复杂的分析数据、网站和数据仓库系统所需要的性能与水平。Enterprise Edition 的全面分析能力和商业智能及其极大的可用性功能(如故障转移群集),另它可以处理大部分的特别业务的企业工作负担。Enterprise Edition 是最全面的 Mysql 版本,是超大型企业的理想选择,能够满足最复杂的要求。[9] 4.1.2数据库表结构 为了满足系统存储数据需要,方
38、便进行插入,更新,统计和查询分析等操作,数据一共设计为两个部分,第一部分为满足插入,更新,删除较多的数据存储。第二部分为满足查询和统计分析。为了方便进行数据库之间的迁移,数据库中不建议采用存储过程,触发器等数据库特征明显的代码,所有表建立,操作SQL均采用标准语句。[10] 数据库表结构如下: 表4-1 admin管理员信息表 列 名 数据类型 长度 说 明 id int 4 编号 name varchar 50 管理员ID password varchar 50 管理员密码 Realname varchar 50 增加时间 Sex var
39、char 50 性别 age varchar 50 年龄 address varchar 50 地址 tel varchar 50 电话 addtime varchar 50 时间 表4-2 Jd公告信息表 列 名 数据类型 长度 说 明 id int 4 编号 Title varchar 50 标题 Content varchar 50 内容 Sj varchar 50 时间 表4-3 F1新闻栏目信息表 列 名 数据类型 长度 说 明 id int 4 编号 Mc varchar
40、 50 名称 表4-4 Member用户信息表 列 名 数据类型 长度 说 明 id int 4 编号 Username varchar 50 帐号 Realname varchar 50 姓名 Sex varchar 50 性别 Age varchar 50 年龄 Address varchar 50 地址 Email varchar 50 邮箱 Regtime varchar 50 时间 Ifuse varchar 50 使用 表4-5 P1评论信息表 列 名
41、数据类型 长度 说 明 id int 4 编号 Sid varchar 50 新闻id Nr varchar 50 内容 Member varchar 50 用户 Sj varchar 50 发布时间 表4-6 Xw新闻信息表 列 名 数据类型 长度 说 明 id int 4 编号 Bt varchar 50 标题 Fl varchar 50 栏目 Nr varchar 50 内容 Sj varchar 50 发布时间 表4-7 Tp图片新闻信息表 列 名 数据类型
42、 长度 说 明 id int 4 编号 Bt varchar 50 标题 url varchar 50 路径 Nr varchar 50 内容 Sj varchar 50 发布时间 4.2 处理流程设计 4.2.1 系统操作流程 图4-1 系统操作流程图 4.2.2 数据增加流程 添加信息时,编号字段由系统自动生成,且不能修改,其他信息由用户输入,之后对数据进行合法判断,合法则写入保存至数据库,不合法则重新输入数据。数据增加流程图: 写入数据库 结束 开始 自动生成编号 输入数据 是否合法 图4-2 数据增加流程
43、图 4.2.3 数据修改流程 在修改信息时,先选中一条待修改的记录,然后直接输入数据,判断合法性,合法则保存至数据库,不合法重新输入。数据修改流程图如图4.3所示。 写入数据库 结束 开始 选择需要修改记录 输入数据 是否合法 图4-3 数据修改流程图 4.2.4 数据删除流程 当用户选定一条记录时,单击删除按钮,会提示用户是否确定删除,然后删除数据库相关内容。数据删除流程图如图4.4所示。 开始 选择需要删除记录 是否删除 更新数据库 图4-4 数据删除流程图 4.3 系统模块设计 4.3.1 管理登录 在管理员登录界面,在用户名对应的文
44、本框中输入用户名,在密码对应的文本框中输入密码,如果用户名和密码同时与数据库中的用户名和密码相对应,点击“确定”后进入系统的主界面。如果输入的信息不正确,则给出提示。 输入:用户名和密码。 处理:校检字符的有效性。用户要登录本系统需要提供用户名和密码,在这里就是要检验用户是否满足输入的要求,即检验用户名和密码文本框是否为空,若为空,则提示用户输入用户名和密码。检验用户名是否存在或密码是否正确,即是否存在用户输入的用户名,并且密码是否正确。 输出:登录成功,进入用户的系统使用资源页面,不成功则显示错误信息页面。 图4-5 系统管理中心图 4.3.2 系统用户登录 功能描述:此
45、模块要实现对系统用户信息的管理功能,管理员可以删除和查看系统帐号的相关信息。界面如下图所示: 图4-6 系统用户管理图 4.3.3 公告信息 公告信息页面,对管理公告信息时输入的各种数据类型做了详细的判断,此模块要实现管理员对公告信息的管理功能,管理员可以删除和查看公告的相关信息。 图4-7 公告信息管理图 第五章 系统调试与测试 5.1 程序调试 在设计系统的过程中,存在一些错误是必然的。对于语句的语法错误,在程序运行时自动提示,并请求立即纠正,因此,这类错误比较容易发现和纠正。但另一类错误是在程序执行时由于不正确的操作或对某些数据的计算公式的逻辑错误导致的错误
46、结果。这类错误隐蔽性强,有时会出现,有时又不出现,因此,对这一类动态发生的错误的排查是耗时费力的。 5.2程序的测试 5.2.1 测试的重要性及目的 (1)测试的重要性 软件的测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段。[11]近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。 事实上,对于软件来讲,不论采用什么技术和
47、什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是软件开发的重要部分。[12]自有程序设计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,软件测试工作量往往占软件开发总工作量的40%以上。而在软件开发的总成本中,用在测试上的开销要占30%到50%。[13]如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作
48、 在实践中,软件测试的困难常常使人望而却步或敷衍了事,这是由于对测试仍然存在一些不正确的看法和错误的态度,这包括: ① 认为测试工作不如设计和编码那样容易取得进展难以给测试人员某种成就感; ② 以发现软件错误为目标的测试是非建设性的,甚至是破坏性的,测试中发现错位是对责任者工作的一种否定; ③ 测试工作枯燥无味,不能引起人们的兴趣; ④ 测试工作是艰苦而细致的工作; ⑤ 对自己编写的程序盲目自信,在发现错误后,顾虑别人对自己的开发能力的看法。 这些观点对软件测试工作是极为不利的,必须澄清认识、端正态度,才可能提高软件产品的质量。 (2)测试的目的 如果测试
49、的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。 ① 软件测试是为了发现错误而执行程序的过程; ② 测试是为了证明程序有错,而不是证明程序无错误; ③ 一个好的测试用例是在于它能发现至今未发现的错误; ④ 一个成功的测试是发现了至今未发现的错误的测试。 这种观点可以提醒人们测试要以查找错误为中心,而不是为了演示软件的正确功能。[14]但是仅凭字面意思理解这一观点可能会产生误导,认为发现错误是软件测试的唯一目,查找不出错误的测试就是没有价值的,事实并非如此。 首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误
50、的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。 5.2.2 测试的步骤 与开发过程类似,测试过程也必须分步骤进行,每个步骤在逻辑上是前一个步骤的继续。大型软件系统通常由若干个子系统组成,每个子系统又由若干个模块组成。[15]因此,大型软件系统的测试基本上由下述几个步骤组成: (1)模块测试 在这个测试步骤中所发现的往往是编码和详细设计的错误。 (2)系统测试 在这个测试步骤中发现的往往是软件设计中的错误,也可能发现需求






