新闻发布系统需求分析说明书(同名25430)

新闻发布系统需求分析说明书(同名25430)
新闻发布系统需求分析说明书(同名25430)

成都信息工程学院

课程设计

课程名称:WEB开发综合设计

设计题目:新闻发布系统

班级:网络工程学院网络102

学号:2010121072

姓名:蒋利达

指导老师: 赵军提交日期:2012-06-13

摘要

随着网络的飞速发展和普及,越来越多的用户习惯上网浏览新闻。而建立一个能够满足普通大众查询旅游信息的网站是有需要和实践意义的。本系统的主要目的就是为用户提供一个方便、及时的网上新闻发布、浏览平台。本系统的开发根据要求通过系统需求分析、设计、实现等过程,完成了系统功能模块的设计与实现。

本系统根据软件工程的设计思想,基于JSP核心组件技术,使用了JAVA编程语言和mysql数据库管理系统来实现。利用本系统,浏览者可以登录网站进行浏览新闻、检索新闻,注册用户可以对信息发表自己的评论,管理员可以直接在管理界面发布新闻信息并根据需要对新闻进行维护。

关键词:新闻发布;JSP;JAVA;mysql

目录

摘要 (2)

目录 (3)

1. 绪论............................................................................................................... 错误!未定义书签。

2. 系统需求分析............................................................................................... 错误!未定义书签。

2.1 功能需求............................................................................................ 错误!未定义书签。

2.2 性能需求............................................................................................ 错误!未定义书签。

2.3 系统可行性分析 (5)

2.3.1 社会可行性 (6)

2.3.2 经济可行性 (6)

2.3.3 技术可行性 (6)

3. 系统总体设计 (6)

3.1 系统功能模块 (7)

3.1.1 用户功能模块 (7)

3.1.2 浏览功能模块 (7)

3.1.3 评论模块 (8)

4. 系统详细设计 (8)

4.1 浏览功能模块实现 (9)

4.1.1 网站总体预览图 (9)

4.1.2 首页展示 (9)

4.2 用户功能模块实现 (10)

4.2.1 登录模块实现 (10)

4.3 评论模块实现 (11)

4.3.1 查看评论 (11)

4.3.2 发表评论 (11)

4.4 数据库的设计 (11)

4.4.1 概念模型设计 (13)

4.4.2 逻辑模型设计 (13)

5. 结论 (17)

参考文献 (17)

2.3 系统可行性分析

2.3.1 社会可行性

随着我国国民经济水平日益提高,人们不再满足于物质需要,转而向更高的精神层面提出要求。而我国的旅游业也处于蓬勃发展的阶段,所以充分利用现代流行、发达而成熟的网络技术,通过建省旅游网站来对外宣传和推广业务无疑是首选的经营策略。

2.3.2 经济可行性

本系统作为一个工程实践设计,无需开发经费,目前对于我们来说在经济上是可以接受的,所以经济上是可行的。

2.3.3 技术可行性

本系统采用B/S模式,即浏览器/服务器模式,在这种模式下无需安装客户端,只需计算机能够连接到因特网即可进行操作。

项目开发工具采用MyEclipse,MyEclipse是企业级工作平台,用它可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大地提高工作效率。

采用JSP开发技术,具备Java技术的简单易用、完全面向对象和平台无关性且安全可靠。

数据库采用mysql,支持十几种操作系统,跨平台、可移植性强,并为多重编程语言提供了API,优化的SQL查询算法,有效地提高查询速度,提供TCP/IP、ODBC和JDBC等多种数据库连接途径。

3. 系统总体设计

系统功能模块图

图3-1 系统功能模块图

3.1 系统功能模块

本系统的功能模块主要分为四块:用户模块、浏览模块、评论模块。

3.1.1 用户功能模块

(1)注册模块:在此模块中,用户可以利用真实姓名、密码、性别、用户邮箱进行注册。

(2)登陆模块:检验用户是否注册,如果未注册将直接跳转入注册页面,另外还可以检验用户是否为合法用户;

(3)基本信息模块:用户可以通过此模块来修改自己的基本信息。

3.1.2 浏览功能模块

(1)新闻介绍:用户可在此模块中浏览新闻,包括新闻标题,新闻内容及评论等信息;

(2)新闻分类:用户可在此模块中分类检索新闻,查看自己感兴趣的新闻内容;

3.1.3 评论模块

(1)查看评论:用户可以浏览整个网页中用户的评论;

(2)发表评论:用户可以在发表自己的言论。

4. 系统详细设计

用户视图

图3-2 用户视图

4.1 浏览功能模块实现

4.1.1 网站总体预览图

图4-1 首页展示

用户界面是用户通过验证后,用户的操作平台。

4.1.2 首页展示

(1)导航菜单

系统左侧是菜单栏区域,用户可以在此进行个人操作。管理员在此可以进行新闻添加、删除和修改。

图4-2 侧边菜单栏

(2)信息显示

首页包含新闻分类,点击新闻可以查看新闻内容。如点击某个新闻,则直接跳转入该新闻的详细介绍页面。

图4-3 信息分类

4.2 用户功能模块实现

4.2.1 登录模块实现

用户可以点击登录链接跳转入登录页面。

图4-4 管理员登录

4.3 评论模块实现

4.3.1 查看评论

用户进入网站后,可以查看评论。

图4-5 用户评论

4.3.2 发表评论

用户登录后,可以在网站发表评论。点击发表评论按钮后,会展开隐藏部分,再次单击又会将发表评论隐藏起来,不需要页面跳转。当前发表评论人和评论时间可根据session和系统时间自动获取到。

4.4 数据库的设计

a.本系统采用mysql数据库管理系统实现,对数据库和文件服务器访问程序的JavaBean封装;

b.系统结构设计

系统采用三层模型,结构图如下:

数据库层(一层)

应用服务器层(二层)

数据访问层(三层)

图4-6 系统结构设计

数据库封装相关代码如下:

package Admin;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class Connected {

static Connection con=null;

public static Connection getcon(){

String CLASSNAME="com.mysql.jdbc.Driver";

String url="jdbc:mysql://localhost:3306/news";

try {

Class.forName(CLASSNAME);

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

try {

con=DriverManager.getConnection(url,"root","910610");

} catch (SQLException e) {

e.printStackTrace();

}

return con;

}

public static Connection releaseCon(){

try {

con.close();

} catch (SQLException e) {

e.printStackTrace();

}

return con;

}

}

4.4.1 概念模型设计

数据库概念模型根据系统需求分析,以及网站工作过程的内容和数据流程的分析,设计以下数据项和数据结构。

管理员:管理员ID、管理员名、密码;

新闻信息:ID、标题、标签、内容;

一级标题:ID、新闻标题、创建者、创建时间;

二级标题:ID、新闻标题、内容、创建者、创建时间、一级标题ID;

评论:评论ID、评论内容、评论时间、二级标题ID;

4.4.2 逻辑模型设计

根据上面的数据库概念模型设计数据库的逻辑模型。本网站的数据库名为news,其中各个表的设计结果如下所示。每个表格表示在数据库中的一个表。

表1 User(用户)

设计代码如下:

-- ----------------------------

-- Table structure for user

-- ----------------------------

CREATE TABLE `user` (

`id` int(4) NOT NULL auto_increment,

`uname` varchar(50) NOT NULL,

`upass` varchar(50) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=gbk;

表2 flt(一级标题)

设计代码如下:

-- ----------------------------

-- Table structure for flt

-- ----------------------------

CREATE TABLE `flt` (

`id` int(4) NOT NULL auto_increment,

`titleName` varchar(50) NOT NULL,

`creator` varchar(50) NOT NULL,

`createTime` datetime NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=gbk;

表3 slt(二级标题)

设计代码如下:

-- ----------------------------

-- Table structure for slt

-- ----------------------------

CREATE TABLE `slt` (

`id` int(4) NOT NULL auto_increment,

`titleName` varchar(50) NOT NULL,

`nr` varchar(2000) NOT NULL,

`creator` varchar(50) NOT NULL,

`createTime` datetime NOT NULL,

`fltId` int(4) NOT NULL,

PRIMARY KEY (`id`),

KEY `flt_slt_fltId` (`fltId`),

CONSTRAINT `flt_slt_fltId` FOREIGN KEY (`fltId`) REFERENCES `flt` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=gbk;

表4 comments(评论)

设计代码如下:

-- ----------------------------

-- Table structure for comments

-- ----------------------------

CREATE TABLE `comments` (

`id` int(4) NOT NULL auto_increment,

`cnr` varchar(200) NOT NULL,

`createTime` datetime NOT NULL,

`sltId` int(4) NOT NULL,

PRIMARY KEY (`id`),

KEY `slt_comments_sltId` (`sltId`),

CONSTRAINT `slt_comments_sltId` FOREIGN KEY (`sltId`) REFERENCES `slt` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=gbk;

5. 结论

JSP从推出至今时间也不算漫长,由于它具有开发简单,功能强大和灵活且跨平台等优点,现在已被广泛接受,成为开发动态网络站点的主要技术之一。JSP 正慢慢成为动态Web应用程序开发环境的主流。

基于Web的新闻发布系统是一种新型的新闻传播方式,随着现代信息技术的发展,它将越来越受到人们的关注并逐步取代传统的新闻发布形式,21世纪它将成为构筑电子新闻体系的主要手段。而基于Web的动态交互式新闻发布系统则是现代新闻发布网络中不可缺少的一部分。

本文提出了一种基于Web的新闻发布系统,该系统的在线发布,多栏目管理,是新闻信息及时、准确的得以发布。

但是由于本人学习JSP时间不长,程序的设计方面存在有缺点,有些简单的想法却用了很长的代码来实现,造成了代码的冗余,还有部分想法没有实现。这些我将在今后的学习中不断完善自己。

参考文献

[1] 张峋,杨三成.JSP与JDBC应用详解.中国铁道出版社.2010

[2] 张海藩.软件工程导论.清华大学出版社.2008

[3] 郭真.JSP程序设计教程.人民邮电出版社.2008

[4] 方睿,韩桂华.数据库原理及应用.机械工业出版社.2010

[5] 孙卫琴.Java面向对象编程.电子工业出版社.2010

[6] 贾素玲,王强.HTML网页设计.清华大学出版社.2007

相关主题
相关文档
最新文档