web应用开发期末报告

更新时间:2024-05-08 16:10:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

云南大学软件学院期末课程报告

Final Course Report

School of Software, Yunnan University

个人成绩

序号 1

学号 姓名 成绩 学 期: 2014秋季学期 课程名称: Web技术及应用开发实践 任课教师: 李 浩 大作业题目: 新闻发布系统 组 长 : 联系电话: 电子邮件:

完成提交时间:2015年 1月 6 日 作业截止时间:2015年 1月 6日

年级:

指标内容 分值 指标内涵及评估标准 A B C 构思 (C, 20分) 意义重大 意义较大 意义一般,属于简单的开发 D 得 分 选题意义 10 无意义 技术路线的可合理可行 10 合理可行,具体 基本合理可行 不够合理 行程度 具体且有创新 设计 (D, 20分) 设计内容 10 内容非常丰富 内容较丰富 内容一般 内容欠缺 解决的关键技准确,范围合适 10 术问题 重点突出 基本准确 部分关键 未抓住关键 实现 (I, 20分) 项目完成的技难度很大 难度较大 难度一般 难度小 10 术水平 达到较高水平 超出一般水平 达到普通水平 很容易实现 团队精神 10 团队合作精神强 合作情况良好 合作情况一般 合作不好 运作 (O, 20分) 组织优秀 组织良好 组织一般 完全达到 较好达到 基本达到 文字表达及文档制作水平(10分) 文字表达 一般 组织混乱 未能达到 文字表达差 意思不明了 达到预期目标20 的程度 文字表达 文档制作 5 文字表达非常好 文字表达较好 5 制作非常专业化 制作良好 制作一般 制作效果差 报告质量及口头表达能力(10分) 报告质量 5 报告非常完整 报告比较完整 完整程度一般 报告不完整 口头表达能力 5 整体效果很好 整体效果良好 整体效果一般 整体效果差 总分: 评语 说明:

5分值:A:5分;B:4分;C:2—3分;D:0—1分

10分值:A:9—10分;B:6—8分;C:3—5分;D:0—2分 20分值:A:16—20分;B:11—15分;C:6—10分;D:0—5分

一、 引论

1. 项目背景及意义

随着网络的快速发展和普及,越来越多的用户习惯上网浏览新闻。本系统的主要目的就是为用户提供一个方便及时的网上新闻发布、浏览平台。利用本系统,用户可以直接在网上发布新闻信息并根据自己的需要对新闻进行检索。本系统遵循软件工程标准,并按照工程软件规定的流程进行项目的开发。主要实现了查看新闻功能、新闻搜索功能、发布新闻功能、管理员登录功能和新闻管理功能。其中管理员登陆实现了新闻,新闻类别以及系统用户的添加,删除,修改等功能。

2. 创新难点

目前,网页制作如火如荼,网站建设热火朝天,社会的竞争是越来越激烈,JSP是一种很简单的、安全的、性能非常之高的、动态的脚本语言。JSP可以用来开发Web应用程序,具有较高的执行效率,强大的数据库支持和网络支持名具有多平台特性和极大地开放性和扩充性,具有广泛的应用前景。JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段,从而形成JSP文件。用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

二、 背景

1. 应用背景

在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。Internet上发布信息是通过网站来实现的,获取信息也是要在Internet中按照一定的检索方式将所需要的信息从网站上下载下来。因此网站建设在Internet应用上的地位显而易见,它已成为政府、企企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。新闻发布系统利用JSP技术开发,其目的在于使新闻的发布和管理更加方便、实时、高效,从而提高工作效率。

随着互联网的进一步发展,网络媒体在人们心中的地位进一步提高,越来越多的用户习惯上网浏览新闻,本系统的主要目的就是为用户提供一个方便、及时的网上新闻发布、浏览平台。利用本系统,一方面用户可以直接在网上发布新闻信息并根据自己的组要对新闻进行浏览、检索、增加或修改。另一方面,现在的新闻发布要求实现与普通用户交互,用户可以很方便的参加一些调查和相关新闻的评论,这一点也是其他一些媒体,如电台等无法做到的。本系统遵循软件工程标准,并按照软件工程规定的流程进行项目的开发。

2. 技术背景

2.1 JSP简介

JSP(Java Server Pages)是一种建立在Servlet规范提供的功能之上的动态网页技术,和ASP类似,他们都是在通常的网页中嵌入脚本代码,JSP文件中嵌入的是Java代码和JSP标记。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。

2.2 JSP的特点

JSP技术在多个方面加速了动态Web页面的开发,具有以下特点。 (1) 将内容的生成和显示进行分离

使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。

使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格)。 (2) 强调可重用的组件

绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者EnterpriseJavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。 (3) 采用标识简化页面开发

Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServerPage技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。

(4) 健壮性与安全性

由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译为JavaServlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理与安全性. (5) 良好的移植性:

作为Java平台的一部分,JSP拥有Java编程语言\一次编写,隋处运行\的特点。

(6) 企业级的扩展性和性能:

当与Java2平台、企业版(J2ee)和EnterpriseJavaBeans技术整合时,JSP页面将服务器JSP页面中的程序代码的识别就是依靠一些基本指令完成.

2.3 JSP技术

JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

2.4 ASP.NET简介

ASP.NET是.NET FrameWork的一部分,是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们。 指 Active Server Pages(动态服务器页面) ,运行于 IIS(Internet Information Server 服务,是Windows开发的Web服务器)之中的程序 。

2.5 ASP.NET的特点

(1)简单易学

asp.net使运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。例如asp.net页面构架允许你建立你自己的用户分界面,使其不同于常见的VB-Like界面。 (2)跨平台性

因为ASP .NET是基于通用语言的编译运行的程序,其实现完全依赖于虚拟机,所以它拥有跨平台性,ASP .NET构建的应用程序可以运行在几乎全部的平台上。

其中大致分为以微软.NET Framework为基础使用IIS做为Web 服务器承载的微软体系,以及使用Mono为基础框架运行在Windows或Linux上的开源体系。 (3)可管理性

asp.net使用一种字符基础的,分级的配置系统,虚拟服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为\Administration\的哲学观念使asp.net的基于应用的开发更加具体和快捷。一个asp.net的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须的文件,不需要系统的重新启动,一切就是这么简单。

三、 需求分析

1.

模块结构图

(1) 系统模块设计图

依据需求分析结果,新闻发布系统可以分为四个模块:数据库访问模块、新闻查看模块、新闻发布模块和新闻管理模块,如图4—1所示。

图 系统模块结构图

(2) 数据库模块设计图

利用JavaBean封装对数据库的操作,主要包括连接数据库、添加、修改、删除、查询数据表、关闭连接等功能。当JSP页面中需要访问数据库时直接调用这个JavaBean即可。数据库访问模块功能树如图4—2所示。

图 数据库访问模块

(3) 新闻查看模块图

新闻查看模块提供分页显示全部新闻的功能,用户通过单击每条新闻的标题可以查看到本条新闻的详细内容。还可以通过输入查询类别和查询关键字来选择符合条件的新闻浏览。新闻查看模块功能树如图4—3所示。

图 新闻查看模块

(4) 新闻发布模块:新闻发布模块提供发布新消息的功能。

(5) 新闻管理模块:新闻管理模块包括修改新闻和删除新闻的功能。在进入

管理模块前,需要以合法的管理员身份登录。新闻管理模块功能树如图4

—4所示。

图 新闻管理模块

2. 流程图

图 流程图

3. 功能需求

本新闻发布系统将实现以下几个功能 : (1) 查看新闻功能:

任何用户均可以使用查看新闻功能。查看新闻功能在首页显示最新新闻,用户可点击文章标题查看新闻的详细内容,可以点击新闻的类别进入分类列表。 (3) 新闻点击率统计:

通过计数器对用户对新闻的点击进行统计,实时显示新闻的点击率。 (4) 管理员登录功能:

当用户需要使用新闻管理功能时,需要先以管理员身份登录系统。在地址栏中输入管理员登录页面的地址,进入管理员登录页面。用户在登录页面输入用户名和密码以及随机产生的验证码,若登录失败,则清空输入,并简要显示错误原因,管理员登录页面等待下一次登录。 (5) 新闻类别管理:

管理员登录后,可以对新闻的类别进行添加修改删除操作。 (6) 新闻发布功能:

获得权限的用户可以使用发布新闻功能。用户通过在系统菜单栏上单击“添加新闻”项可以进入发布新闻页面。发布新闻时,需要填写新闻的标题和内容,发布时间取当前系统时间,不需要用户填写。 (7) 新闻管理功能:

当用户作为管理员登录系统后,可以进行新闻管理操作,包括对现有新闻的修改和删除。在管理页面上,用户可以通过单击每条记录右侧的“编辑”和“删除”超链接来进行操作。当管理员的本次维护工作结束后,可通过单击“退出”超链接来注销管理员身份。当用户作为管理员登录系统后,可以进行新闻管理操作,包括对现有新闻的修改和删除。在管理页面上,用户可以通过单击每条记录右侧的“编辑”和“删除”超链接来进行操作。当管理员的本次维护工作结束后,可通过单击“退出”超链接来注销管理员身份。 (8) 评论功能:

任何用户在输入标题和个人名称后可对新闻进行评论,用户可以查看所有评论,管理员可以查看和删除评论。

4. 非功能需求

(1)安全需求

由于使用JSP编写的程序代码隐蔽,在客户端仅可以看到由JSP输出的动态HTML文件,因此只要编写程序时注意严谨性,防止SQL注入和cookies欺骗,整个系统的安全就能得到保障,同时也能防止别人抄袭源代码。本系统的管理员可以有多名,为防止暴力猜解密码,在设计后台登陆模块时需考虑验证码的设计。使用Tomacat6.0为系统地发布平台,发布方便,安全可靠性比较高。 (2)性能需求

Tomacat可以免安装,体积小,运行效率高。能很方便的在Windows和Linux系统下发布。同时使用MySql5.0数据库,安装方便,而且免费使用,MySql在Windows XP以及Linux下都能被良好的支持。而JSP不但可以用Eclipse,也可以用Dreamweaver编辑,甚至记事本等文本编辑工具即可编写,因此对系统运行环境非常低,小型服务器和家用电脑均可作为本系统运行环境。

四、 系统设计

1. 设计原则

1、可靠性:系统必须保证安全、稳定、可靠运行。 2、合法性:系统必须确保面向公众的信息合法性。 3、可修改性:要求以科学的方法设计本系统,使之有良好的结构和完备的文档,系统性能易于调整。 4、容易理解

可理解性是其可靠性和可修改性的前提。它并不仅仅是文档清晰可读的问题,更要求系统本身具有简单明了的结构。这在很大程度上取决于设计者的洞察力和创造性,以及对设计对象掌握得透彻程度,当然它还依赖于设计工具和方法的适当运用。

5、实用性:系统各部分组件性能价格比高,易维护、易使用、运行费用低。 6、先进性:整个系统保持一定的先进性,采用的设备和技术是目前国际领先的,同时满足客户需求,系统性能可靠,易于维护。

7、扩展性:软件设计完要留有升级接口和升级空间。对扩展开放,对修改关闭。 8、程序简便:本系统依据简单易操作的原则。 9、可测试性: 可测试性就是设计一个适当的数据集合,用来测试所建立的系统,并保证系统得到全面的检验。 10、效率性:

效率性一般用程序的执行时间和所占用的内存容量来度量。在达到原理要求功能指标的前提下,程序运行所需时间愈短和占用存储容量愈小,则效率愈高。 11、标准化原则:

在结构上实现开放,基于业界开放式标准,符合国家和信息产业部的规范。

2. 架构设计(软件、硬件)

主要功能明确以后,开始对新闻发布系统进行必要的系统设计。 整个系统采用多层系统架构模式,从上到下依次为视图层、业务层和数据层。 视图层负责向用户展现数据,在新闻发布系统中视图层主要有JSP页面构成。设计JSP页面的原则是尽量减少JSP页面中的JSP代码量,把具体的业务逻辑放在页面层实现,JSP页面只负责显示业务层面的结果。对于一些公用的视图资源(如JSP页面的图片、公用文字等),应当使用“<%@include%>”的形式包含,提高代码的可重用性。

业务层负责具体业务逻辑的实现,在新闻系统中通过编写专门的业务类来实现。各业务类从同一个抽象业务基类继承。所有业务类都从一个抽象的业务基类继承,这种做法使得业务类更加规范、可拓展性更强。

数据层包含了系统中所涉及的业务实体、业务规则以及对数据库层的访问方法。业务实体主要包含管理员、新闻和新闻类型,每个实体都有一个相应的实体类,这些实体类本质上是JavaBean,其中封装了实体的各项属性。实体类的作用是依据面向对象的原则描述一个业务实体。

五、 数据库

1. E-R图

根据分析可划分出新闻信息、新闻类别信息、评论信息和用户信息和几个实体,其具体的E-R模型如下 (1) 新闻信息

图3-1 新闻信息实体的E-R模型

(2) 评论信息

图3-2 评论信息实体的E-R模型

(3) 用户信息

图3-3 用户信息实体的E-R模型

(4) 新闻类别信息

图3-4 新闻类别信息实体的E-R模型

(5) E-R关系图

图3-5 ER关系模型图

2. 实现工具

本文来源:https://www.bwwdw.com/article/6pwg.html

Top